You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Pandas DataFrame中数组列的元素与另一列数值相乘生成新列?

如何将Pandas DataFrame中数组列的元素与另一列数值相乘生成新列?

嘿,你的思路完全没问题!你想要实现的是把DataFrame里数组列的每个元素和对应行的另一列数值相乘,生成新的数组列,你的代码其实已经完美达成这个需求了。

先看你给出的示例数据和代码:

import pandas as pd
data = {'a': [3, 2], 'b': [[4], [7, 2]]}
df = pd.DataFrame(data)
df['c'] = df.apply(lambda row: [row['a'] * x for x in row['b']])

这里的关键是用df.apply()逐行处理数据,通过列表推导式把当前行a列的数值,和b列数组里的每一个元素分别相乘,最后将结果赋值给新列c。

运行这段代码后,得到的结果正好是你想要的:

abc
3[4][12]
2[7, 2][14, 4]

如果后续要处理大规模数据集,还可以考虑用更高效的向量化操作,但对于这种小规模场景,你的写法已经足够清晰易懂啦。

备注:内容来源于stack exchange,提问作者STOWE

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.14 13:27:59