[英]Sum the amount of boolean values (based on value groups within different column) inside a new column
[英]Add a new column with sum of values divided by unique value within groups in python
我有一個 dataframe 例如::
Group COL1 COL2
G1 30 500
G1 21 500
G1 43 500
G2 89 677
G2 78 900
G3 32 322
G3 90 200
我想添加一個名為mean_group
的新列,在其中計算每個Group
的總和COL1
/ COL2
的唯一值。例如, (30+21+43)/500 = 0.188
I should then get:
Group COL1 COL2 mean_group
G1 30 500 0.188
G1 21 500 0.188
G1 43 500 0.188
G2 89 677 0.2466765
G2 78 677 0.2466765
G3 32 322 0.09937888
做這個
df['mean_group']=df.groupby('Group')['COL1'].transform('sum')/df['COL2']
output:
Group COL1 COL2 mean_group
0 G1 30 500 0.188000
1 G1 21 500 0.188000
2 G1 43 500 0.188000
3 G2 89 677 0.246677
4 G2 78 900 0.185556
5 G3 32 322 0.378882
6 G3 90 200 0.610000
利用:
df['mean_group'] = df.groupby('Group')['COL1'].transform('mean')/df['COL2']
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.