Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 根据条件计算熊猫数据框中的sumproduct(Excel)_Python 3.x_Pandas_Dataframe - Fatal编程技术网

Python 3.x 根据条件计算熊猫数据框中的sumproduct(Excel)

Python 3.x 根据条件计算熊猫数据框中的sumproduct(Excel),python-3.x,pandas,dataframe,Python 3.x,Pandas,Dataframe,我有一个数据帧。结构: SEQ product_name prod_cost non-prd_cost mgmt grand_total 1 prod1 100 200 20 320 2 prod2 200 400 30 630 3 prod3 300 500 40

我有一个数据帧。结构:

SEQ     product_name prod_cost  non-prd_cost mgmt    grand_total
1       prod1           100       200         20        320
2       prod2           200       400         30        630
3       prod3           300       500         40        840
4       prod4           100       300         50        450
我想根据条件计算sumproduct(在excel中)。条件基于产品名称

假设我想计算一个叫做

sumprod_prod1_prd_prod3_mgmt = SUMPRODUCT(SEQ 1-4,product_name='prod1'_prod_cost and 'prod3'_mgmt)/2  = 100+40=140

如何在pandas中执行此操作?

虽然我对您的问题有点困惑,但因为excel SUMPRODUCT函数返回相应范围或数组的乘积之和,而您似乎需要单数组合的总和。
要获得所需的值,请执行以下操作:

sumprod_prod1_prd_prod3_mgmt = df[df['product_name'] == 'prod1']['prod_cost'].values[0]+df[df['prod_name']=='prod3']['mgmt'].values[0]

此解决方案为指定值提供单一结果。如果您需要提供与excel相同功能的解决方案,请更新您的问题和示例,以便更好地定义您要查找的内容。

在pandas中使用groupby或pivot表。显示所需的输出