13

我应用一些函数并为 Pandas 数据框的现有列生成一个新列值。但是df['col1'] = new_list,将新列表分配给该列不起作用。这是错误的方法吗?应用这种操作的准确方法是什么?

4

2 回答 2

10

如果列表的长度等于 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

于 2013-11-05T11:49:47.523 回答
1

我认为这个问题正在寻找这样的东西。

new_list = [1,2,3]

    col1
0  [1,2,3]
1  [1,2,3]
2  [1,2,3]

我想我在这里找到了答案:

如何将整个列表分配给熊猫数据框的每一行

于 2020-09-07T13:31:23.837 回答