【发布时间】:2020-07-26 10:13:42
【问题描述】:
我有一个数据框,其中有两个系列,每个系列都包含许多列表。我想对“列表 A”中的每个列表与“列表 B”中的相应列表执行逐元素乘法。
df = pd.DataFrame({'ref': ['A', 'B', 'C', 'D'],
'List A': [ [0,1,2], [2,3,4], [3,4,5], [4,5,6] ],
'List B': [ [0,1,2], [2,3,4], [3,4,5], [4,5,6] ] })
df['New'] = df.apply(lambda x: (a*b for a,b in zip(x['List A'], x['List B'])) )
目的是得到以下输出:
print(df['New'])
0 [0, 1, 4]
1 [4, 9, 16]
2 [9, 16, 25]
3 [16, 25, 36]
Name: New, dtype: object
但是我收到以下错误:
KeyError: ('List A', 'occurred at index ref')
【问题讨论】:
标签: python pandas list dataframe multiplication