Ich versuche, fehlende Werte in einer Spalte in einem pandas
Datenframe zu aktualisieren, aber bekomme eine Warnung über die Methode. Wenn ich den Vorschlag ändere, bekomme ich immer noch den gleichen Fehler. Was kann ich tun, um nicht von Pandas angeschrien zu werden?Panda-Dataframe richtig aktualisieren
Erster Versuch:
df['column1'].fillna(inplace=True, value='Low')
Erste Antwort:
/usr/local/bin/python3.5/site-packages/pandas/core/indexing.py:3295: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame.
Try using .loc[row_indexer,col_indexer] = value instead
Zweiter Versuch:
df.loc[df['column1'].isnull(), 'column1'] = 'Low'
Zweite Antwort:
/usr/local/bin/python3.5/site-packages/pandas/core/generic.py:476: SettingWithCopyWarning:
A value is trying to be set on a copy of a slice from a DataFrame
Haben Sie versucht, '.replace()' zu verwenden? Grundsätzlich: 'import numpy als np; df.replace ({'Spalte1: {np.nan:' Low '}'}, Inplace = True) '? – Abdou
Wie hast du 'df' bekommen? Möglicherweise erhalten Sie die Warnung, weil "df" selbst erstellt wurde, indem Sie einen anderen DataFrame geschnitten haben. – BrenBarn
@BrenBarn = Ich baue df aus einer Teilmenge von big_df. 'df = big_df [big_df ['columnA'] == 'X']' – mikebmassey