我正在寻找pandas语法来对Pandas DataFrame进行以下聚合。我找不到如何在pandas中完成以下sql查询的示例。
#sum and divide
select
click,
ctr,
SUM(click)/SUM(imp) as ctr
from mytable
group by website
#normalize each subgroup
select
imp,
imp/SUM(imp) Over (partition website) as n_imp
from mytable
答案 0 :(得分:1)
SQL:
#normalize each subgroup
select
imp,
imp/SUM(imp) Over (partition website) as n_imp
from mytable
熊猫:
df[['website','imp']].assign(n_imp=df['imp']/df.groupby('website')['imp'].transform('sum'))