[英]additional column when saving pandas data frame to csv file
這里是處理和保存csv文件的代碼,以及原始輸入csv文件和輸出csv文件,在Python 2.7上使用pandas並想知道為什么在保存文件時會有一個額外的列? 謝謝。
c_a,c_b,c_c,c_d
hello,python,pandas,0.0
hi,java,pandas,1.0
ho,c++,numpy,0.0
sample = pd.read_csv('123.csv', header=None, skiprows=1,
dtype={0:str, 1:str, 2:str, 3:float})
sample.columns = pd.Index(data=['c_a', 'c_b', 'c_c', 'c_d'])
sample['c_d'] = sample['c_d'].astype('int64')
sample.to_csv('saved.csv')
這是保存的文件,開頭有一個附加列,其值為0, 1, 2
。
cat saved.csv
,c_a,c_b,c_c,c_d
0,hello,python,pandas,0
1,hi,java,pandas,1
2,ho,c++,numpy,0
附加列對應於數據幀的索引,並在讀取CSV文件后進行聚合。 您可以使用此索引以有效的方式對DF進行切片,選擇或排序。
http://pandas.pydata.org/pandas-docs/stable/generated/pandas.Index.html
http://pandas.pydata.org/pandas-docs/stable/indexing.html
如果要避免使用此索引,可以在使用函數pd.to_csv
保存數據pd.to_csv
時將index
標志設置為False
。 此外,您要刪除標題並稍后將其聚合,但您可以使用CSV標題來避免此步驟。
sample = pd.read_csv('123.csv', dtype={0:str, 1:str, 2:str, 3:float})
sample.to_csv('output.csv', index= False)
希望能幫助到你 :)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.