Ich verwende die Pandas-Bibliothek, um einige CSV-Daten einzulesen. In meinen Daten enthalten bestimmte Spalten Zeichenfolgen. Die Zeichenfolge "nan"
ist ein möglicher Wert, ebenso wie eine leere Zeichenfolge. I Es ist mir gelungen, Pandas dazu zu bringen, "nan" als Zeichenfolge zu lesen, aber ich kann nicht herausfinden, wie ich es dazu bringen kann, einen leeren Wert nicht als NaN zu lesen. Hier sind Beispieldaten und Ausgabe
Eins, Zwei, Drei a, 1, eins b, 2, zwei, 3, drei d, 4, nan e, 5, fünf nan, 6, g,7,sieben >>> pandas.read_csv("test.csv", na_values={"Eins": [], "Drei": []}) Eins Zwei Drei 0 a 1 eins 1 b 2 zwei 2 NaN 3 drei 3 d 4 nan 4 e 5 fünf 5 nan 6 NaN 6 g 7 sieben
Er liest "nan" korrekt als Zeichenfolge "nan", liest aber immer noch die leeren Zellen als NaN. Ich habe versucht, str
im converters
-Argument an read_csv (mit converters={"One": str})
) zu übergeben, aber es liest die leeren Zellen immer noch als NaN.
Mir ist klar, dass ich die Werte nach dem Lesen mit fillna füllen kann, aber es gibt wirklich keine Möglichkeit, Pandas mitzuteilen, dass eine leere Zelle in einer bestimmten CSV-Spalte gelesen werden soll als leerer String anstelle von NaN?