2 回答

TA貢獻(xiàn)1765條經(jīng)驗(yàn) 獲得超5個(gè)贊
我認(rèn)為問題首先是沒有創(chuàng)建列DataFrame,所以如果要分配列名它失敗了。
解決方案是將參數(shù)添加columns到 DataFrame 構(gòu)造函數(shù),索引應(yīng)簡(jiǎn)化 - 僅分配range:
df = pd.DataFrame(index= range(5), columns=["res"+str(i) for i in range(5)])
print (df)
res0 res1 res2 res3 res4
0 NaN NaN NaN NaN NaN
1 NaN NaN NaN NaN NaN
2 NaN NaN NaN NaN NaN
3 NaN NaN NaN NaN NaN
4 NaN NaN NaN NaN NaN
如果想在只有索引的 DataFrame 之后分配,可以使用DataFrame.reindex:
df = pd.DataFrame(index=range(5))
df = df.reindex(["res"+str(i) for i in range(5)], axis=1)
print (df)
res0 res1 res2 res3 res4
0 NaN NaN NaN NaN NaN
1 NaN NaN NaN NaN NaN
2 NaN NaN NaN NaN NaN
3 NaN NaN NaN NaN NaN
4 NaN NaN NaN NaN NaN

TA貢獻(xiàn)1936條經(jīng)驗(yàn) 獲得超7個(gè)贊
import pandas as pd
df = pd.DataFrame(index= range(5))
for i in range(5):
df['res'+str(i)]= '0'
print (df)
res0 res1 res2 res3 res4
0 0 0 0 0 0
1 0 0 0 0 0
2 0 0 0 0 0
3 0 0 0 0 0
4 0 0 0 0 0
添加回答
舉報(bào)