我在熊猫df中有以下数据:
Season | Answer
------ | ------
0 4 | 0
1 4 | 0
2 2 | 0
3 1 | 1
4 4 | 1
5 2 | 1
6 3 | 0
7 1 | 0.5
8 4 | 1
9 4 | 0
我想计算每个季节有多少天有 Answer=1,有多少天有 answer=0.5,有多少天有 answer=0 得到下一个结果:
Season | Answer | Quantity
------ | ------ | --------
0 4 | 0 | 3
1 4 | 0 | 3
2 2 | 0 | 1
3 1 | 1 | 1
4 4 | 1 | 2
5 2 | 1 | 1
6 3 | 0 | 1
7 1 | 0.5 | 1
8 4 | 1 | 2
9 4 | 0 | 3
让我们尝试groupby
transfrom
:
df['Quantity'] = df.groupby(['Season','Answer'])['Answer'].transform('size')
输出:
Season Answer Quantity
0 4 0.0 3.0
1 4 0.0 3.0
2 2 0.0 1.0
3 1 1.0 1.0
4 4 1.0 2.0
5 2 1.0 1.0
6 3 0.0 1.0
7 1 0.5 1.0
8 4 1.0 2.0
9 4 0.0 3.0