Ich möchte Zeilen finden, die eine Zeichenfolge enthalten, wie folgt:
DF[DF.col.str.contains("foo")]
Dies schlägt jedoch fehl, da einige Elemente NaN sind:
ValueError: Kann nicht mit einem Vektor indizieren, der NA / NaN-Werte enthält
Also greife ich auf das Verschleierte zurück
DF[DF.col.notnull()][DF.col.dropna().str.contains("foo")]
Gibt es einen besseren Weg?
a
eine CSV-Datei vorhanden war und diea
Spalte die Zeichenfolge "nan" enthielt.pandas
"intelligent" wandelte dies umNaN
und begann sich zu beschweren, als ich es versuchtedf.a.str.contains()
. Also ja, Protip: Stellen Sie sicher, dass Sie den Spaltentyp einstellenread_csv()
oder danach etwas wiedf = df.where(pandas.notnull(df), "nan")
LOL tun