将列中的所有值相乘

时间:2021-01-05 02:49:18

标签: python pandas

我使用的是 pandas 1.14 和 python 3.8

给定一个数据框:

Id      A      B
1       3      4
2       3      4
3       1      2
4       4      3

如果我想对 A 列中的所有值求和,我只想 sum(df["A"]) 如何替换总和 -> 乘法?

我想要的是 multiply(df["A"]) 它将返回 3 x 3 x 1 x 4 = 36。

提前致谢!

4 个答案:

答案 0 :(得分:3)

这应该有效

df.A.product()

答案 1 :(得分:1)

试试cumprod

print(df['A'].cumprod())

输出:

0     3
1     9
2     9
3    36
dtype: int64

cumprod 代表“累积乘积”,它将值相互相乘累积。

答案 2 :(得分:0)

numpy.prod(df["A"])

似乎成功了!但是,如果有熊猫的做法,我很想知道!

答案 3 :(得分:0)

让我们试试

 df.loc['prod','A']=df.A.prod(0)