我有一個數據集,看起來像:訪問在大熊貓列在不同的方式
Id Economics English History Literature
0 56 1 1 2 1
1 11 1 0 0 1
2 6 0 1 1 0
3 43 2 0 1 1
4 14 0 1 1 0
我從文件中讀取一些CSV創造了這個數據集,我可以很容易地訪問列只是用df [」例如,「經濟學」。然後我把它保存到與文件:
df.to_csv(file_path, sep='\t')
但是,當我重新工作在其他功能的數據集我其他目的,並試圖訪問相同的方式列,即
df=pd.read_csv(file_path, sep='\t')
print df['Economics']
我有
KeyError: Economics
我試過多種編碼,同時閱讀,如果它不是一個多指標的數據幀也驗證了,但一切都與編碼和指數確定。我發現還有另一種方法:df.get('Economocs'),在這種情況下工作沒有錯誤。但是,如果我想重複列名稱,再次尋找「經濟學」,我有一個KeyError。
所以我的問題:爲什麼會發生?爲什麼有時我可以直接使用df ['column_name']訪問列,有時我需要使用df.get('column_name')。以及如何處理column.names,如果第一種方法不起作用?
你可以提供一個自包含的例子證明了什麼問題? – BrenBarn
@BrenBarn,你是什麼意思的獨立的例子?我更新了問題,如果它有助於理解問題 – Amanda
我的意思是提供一段代碼和示例數據,以便其他人可以真正運行該代碼並重現錯誤。任何人都很難幫助你解決問題的描述。您需要一個其他人可以用來複制問題的實際示例。 – BrenBarn