J'utilise la bibliothèque pandas pour lire des données CSV. Dans mes données, certaines colonnes contiennent des chaînes de caractères. La chaîne "nan"
est une valeur possible, tout comme une chaîne vide. J'ai réussi à faire en sorte que pandas lise "nan" comme une chaîne de caractères, mais je n'arrive pas à comprendre comment faire pour qu'il ne lise pas une valeur vide comme NaN. Voici un exemple de données et de résultats
One,Two,Three
a,1,one
b,2,two
,3,three
d,4,nan
e,5,five
nan,6,
g,7,seven
>>> pandas.read_csv('test.csv', na_values={'One': [], "Three": []})
One Two Three
0 a 1 one
1 b 2 two
2 NaN 3 three
3 d 4 nan
4 e 5 five
5 nan 6 NaN
6 g 7 seven
Il lit correctement "nan" comme la chaîne "nan", mais lit toujours les cellules vides comme NaN. J'ai essayé de passer str
dans le converters
à read_csv (avec converters={'One': str})
), mais il lit toujours les cellules vides comme NaN.
Je sais que je peux remplir les valeurs après lecture, avec fillna, mais n'y a-t-il vraiment aucun moyen de dire à pandas qu'une cellule vide dans une colonne CSV particulière doit être lue comme une chaîne vide au lieu de NaN ?