我应用了一些函数并为Pandas数据帧的现有列生成新的列值。但是df['col1'] = new_list
无法为列分配新列表。这是错误的方式,应用这种操作的准确方法是什么?
答案 0 :(得分:8)
如果列表的长度等于DataFrame中的行数
,它应该有用>>> df = pd.DataFrame({'A':[1,2,3], 'B':[4,5,6]})
>>> df['C'] = [10,20,30]
>>> df
A B C
0 1 4 10
1 2 5 20
2 3 6 30
如果您的列表比DataFrame更短或更长,那么您将收到错误Length of values does not match length of index
。
答案 1 :(得分:0)
我认为这个问题正在寻找类似的东西。
new_list = [1,2,3]
col1
0 [1,2,3]
1 [1,2,3]
2 [1,2,3]
我想我在这里找到了答案:
how to assign an entire list to each row of a pandas dataframe