Warum testen `NaN == NaN` nicht für das fallenlassen von ein pandas dataFrame?

Bitte erklären, wie NaN ' s behandelt werden, in der pandas, da die folgende Logik scheint "kaputt" zu mir, ich habe versucht, verschiedene Möglichkeiten (siehe unten) fallen die leeren Werte.

Mein dataframe, die lade ich aus einer CSV-Datei mit read.csv hat eine Spalte comments ist leer die meiste Zeit.

Die Spalte marked_results.comments sieht wie folgt aus; der rest der Spalte ist "NaN", so pandas Lasten leere Einträge, wie NaNs, so weit, so gut:

0       VP
1       VP
2       VP
3     TEST
4      NaN
5      NaN
....

Nun versuche ich drop die Einträge, nur diese funktioniert:

  • marked_results.comments.isnull()

Alle diese funktionieren nicht:

  • marked_results.comments.dropna() gibt nur der gleichen Spalte, wird nichts gelöscht, verwirrend.
  • marked_results.comments == NaN gibt nur eine Reihe von alle Falses. Nichts war NaNs... verwirrend.
  • ebenfalls marked_results.comments == nan

Ich auch versucht:

comments_values = marked_results.comments.unique()

array(['VP', 'TEST', nan], dtype=object)

# Ah, gotya! so now ive tried:
marked_results.comments == comments_values[2]
# but still all the results are Falses!!!
  • NaN != NaN - gelesen von Stephen Canon akzeptierte Antwort.
InformationsquelleAutor idoda | 2013-07-31
Schreibe einen Kommentar