不建议您尝试什么。
一
熊猫并不是被设计成一系列地保存列表。这样,您就可以显式定义一个系列并通过
update
或
loc
. 注释
at
用于获取或设置
单值
只是,不是像您的情况那样有多个值。
a = [5, 5, 5]
indices = [0, 2]
df['col3'].update(pd.Series([a]*len(indices), index=indices))
# alternative:
# df.loc[indices, 'col3'] = pd.Series([a]*len(indices), index=indices)
print(df)
col1 col2 col3
0 2 5 [5, 5, 5]
1 4 3 5
2 6 2 [5, 5, 5]
一
更多信息(
source
):
不要这样做
.熊猫从来没有被设计成在系列/列中保存列表。你可以编造昂贵的解决办法,但这些不是
推荐。
不建议连续保存列表的主要原因是丢失
使用连续内存块中的numpy数组附带的矢量化功能。你的系列将是
object
表示一系列指针的数据类型,类似于
list
. 你会失去
在记忆和性能方面的好处,以及对优化熊猫方法的访问。
也见
What are the advantages of NumPy over regular Python
lists?
赞成大熊猫的论据与支持努比的论据相同。