[英]How to read column names from csv as integer in pandas
似乎pd.read_csv()
的默認值是將列名讀取為str
。 我找不到記錄的行為,因此找不到更改它的位置。
有沒有辦法告訴read_csv()
將列名作為整數讀入?
或者也許解決方案是在調用pd.DataFrame.to_csv()
時指定數據類型。 無論哪種方式,在寫入 csv 時,列名都是整數,讀取時不會保留。
我正在使用的代碼與此(信用)松散相關:
df = pd.DataFrame(index=pd.MultiIndex.from_arrays([[], []]))
for row_ind1 in range(3):
for row_ind2 in range(3, 6):
for col in range(6, 9):
entry = row_ind1 * row_ind2 * col
df.loc[(row_ind1, row_ind2), col] = entry
df.to_csv("df.csv")
dfr = pd.read_csv("df.csv", index_col=[0, 1])
print(dfr.loc[(0, 3), 6]) # KeyError
print(dfr.loc[(0, 3), "6"]) # No KeyError
我的臨時解決方案是:
dfr.columns = dfr.columns.map(int)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.