Ich importiere einen Datenrahmen aus einer CSV-Datei, kann jedoch nicht auf einige Spalten zugreifen. Was ist los?Zugriff auf Datenframe-Spalten nicht möglich
Genauer gesagt:
> import pandas
> jobNames = pandas.read_csv("job_names.csv")
> print(jobNames)
job_id job_name num_judgements
0 933985 Foo 180
1 933130 Moo 175
2 933123 Goo 150
3 933094 Flue 120
4 933088 Tru 120
Wenn ich versuche, die zweite Spalte zuzugreifen, erhalte ich eine Fehlermeldung:
> jobNames.job_name
AttributeError: 'DataFrame' object has no attribute 'job_name'
Seltsamerweise ich so die job_id Spalte zugreifen:
> print(jobNames.job_id)
0 933985
1 933130
2 933123
3 933094
4 933088
Name: job_id, dtype: int64
Edit (die akzeptierte Antwort in Zusammenhang bringen):
Es stellt sich heraus, dass die erste Zeile der CSV-Datei (mit den Spaltennamen) wie folgt aussieht:
job_id, job_name, num_judgements
Hinweis der Räume nach jedem Komma! Diese Räume werden in den Spaltennamen beibehalten:
> jobNames.columns[1]
' job_name'
, die keine gültigen Python-Bezeichner bilden, so enthalten diese Spalten als Datenrahmen Attribute nicht verfügbar sind. Ich kann sie immer noch Zugriff auf dict-style:
> jobNames[' job_name']
Stimmt, CSV 101 ist fehlgeschlagen. –