我有使用pandas的現行代碼:
file1_csv = 'fileX.csv'。
data = pd.read_csv(file1_csv, header=None, usecols=[0,43] )
print (data)
結果是:
0 43
0 57669557 2020-02- 15
1 57779240 2017-02-15
2 96951148 201807-24
我需要的是把這個結果放到一個新的csv檔案中,并有這樣的內容:
col1, col2
57669557,2020-02-15
57779240,2017-02-15
96951148,201807-24
我的代碼是這樣的:
final = pd.DataFrame(data, columns=['col1','col2'] )
final.to_csv('finalFile.csv', index=False)
但輸出結果是錯誤的,生成了下一個:
col1,col2
,
,
,
uj5u.com熱心網友回復:
當使用DataFrame建構式與一個已經有索引的結構(像另一個DataFrame)。columns引數,從現有的索引中選擇值,它不會覆寫索引名稱。
我們需要做的是:
final = pd.DataFrame(data)
final.columns = ['col1'/span>, 'col2'/span>] # 重寫列名。
final.to_csv('finalFile.csv', index=False)
或者獲得一個非索引的結構,如array(to_numpy):
# Break existing index alignment。
final = pd.DataFrame(data.to_numpy(), columns=['col1','col2'] )
final.to_csv('finalFile.csv', index=False)
*或任何其他的方式來重命名或覆寫(set_axis)現有的列
這些方法產生了預期的finalFile.csv:
col1, col2
57669557,2020-02-15
57779240,2017-02-15
96951148,2018-07-24
看看這個玩具例子,顯示了columns從現有的DataFrame中選擇值:
import pandas as pd
data = pd.DataFrame({
0: [57669557, 57779240, 96951148] 。
43: ['2020-02-15'/span>, '2017-02-15'/span>, '2018-07-24'/span>]
})
print(data)
final = pd.DataFrame(data, columns=[43] )
print(final)
程式輸出:
# data。
0 43
0 57669557 2020-02- 15
1 57779240 2017-02-15
2 96951148 201807-24
# final (只有第43列被選中)
43
0 2020-02-15
1 2017-02-15
2 2018-07-24
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/331566.html
標籤:
