Heim > Artikel > Backend-Entwicklung > Warum erhalte ich beim Zugriff auf eine Spalte in meinem DataFrame einen „pandas.hashtable.KeyError'?
Fehler: pandas.hashtable.KeyError
Beim Versuch, eine bestimmte Spalte aus einem Pandas-Datenrahmen abzurufen, wird die Fehlermeldung „pandas. hashtable.KeyError“ zeigt an, dass der Schlüssel (Spaltenname) nicht in den Daten vorhanden ist Frame.
In diesem speziellen Fall versuchte der Benutzer, auf die Spalte „Rezension“ zuzugreifen, erhielt jedoch den KeyError. Um dieses Problem zu beheben, muss unbedingt sichergestellt werden, dass der angegebene Spaltenname korrekt ist und im Datenrahmen vorhanden ist.
Eine mögliche Fehlerursache ist das Vorhandensein von Leerzeichen oder Sonderzeichen im Spaltennamen. Um dieses Problem zu beheben, kann der Benutzer mithilfe des folgenden Codes Leerzeichen aus den Spaltennamen entfernen:
reviews_new.columns = reviews_new.columns.str.strip()
Alternativ kann beim Lesen der CSV-Datei der Parameter „skipinitialspace“ verwendet werden, um alle führenden Leerzeichen zu ignorieren:
reviews_new = pd.read_csv("D:\aviva.csv", skipinitialspace=True)
Eine weitere mögliche Ursache ist die Verwendung eines falschen Trennzeichens beim Lesen der CSV-Datei. Das Standardtrennzeichen ist ein Komma, aber wenn die Daten durch ein anderes Zeichen (z. B. ein Semikolon) getrennt werden, sollte der Parameter „sep“ angegeben werden:
reviews_new = pd.read_csv("D:\aviva.csv", sep=";")
Wenn das Problem weiterhin besteht, wird dies empfohlen um die Liste der Spaltennamen mit dem folgenden Code auszudrucken:
print(reviews_new.columns.tolist())
Dadurch werden die tatsächlichen Spaltennamen ausgegeben, die im Datenrahmen vorhanden sind, und eventuelle Abweichungen vom beabsichtigten Spaltennamen können behoben werden identifiziert.
Das obige ist der detaillierte Inhalt vonWarum erhalte ich beim Zugriff auf eine Spalte in meinem DataFrame einen „pandas.hashtable.KeyError'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!