如何在数据透视表中添加计算比率?

我希望将计算字段(比率)添加到 pandas 数据透视表。类似于这个问题(如何将计算百分比添加到熊猫数据透视表)我无法让我的代码工作。


我正在尝试获取电子邮件的新近打开率 %。一个简单的比率,公式如下所示:dst['perc'] = (dst['recency_opened'] / dst['recency_sent'])


 # My Pivot Table code: 

 emails = 

 pd.pivot_table(dst,'emails_opened','emails_sent','recency_opened', 

 'recency_sent', 'perc'],['segment', 'hcp_type'], aggfunc='sum', 

 fill_value=None, margins=True, dropna=True, margins_name='Total')


 emails

结果是这样的:


                perc    recency_opened  recency_sent

hcp_type            

Doctor          113.0   113             150

Nurse           33.0     33              37

Total           146.0   146             187

但我的预期结果应该是:


                perc    recency_opened  recency_sent

hcp_type            

Doctor          0.753   113             150

Nurse           0.891    33              37

Total                   146             187

或者,我也可以使用 DataFrame(不一定是数据透视表),因为我真的很想分析电子邮件新近打开率%。


Smart猫小萌
浏览 444回答 1
1回答

杨__羊羊

你在opened除以sent?>>> import pandas as pd>>> df = pd.DataFrame([[113, 150], [33, 37]],                  columns=['opened', 'sent'], index=['Doctor', 'Nurse'])>>> df['ratio (%)'] = df['opened']/df['sent']>>> df        opened  sent  ratio (%)Doctor     113   150   0.753333Nurse       33    37   0.891892
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python