Python按列分组并在另一列中计数字符串

时间:2018-07-17 23:02:43

标签: python pandas dataframe

我想计算“类型”列中有多少“ AA”,按“卡”列分组

样本数据

index   card    type
0       88       AA
1       88       AA
2       88       dsv
3       44       AA
4       44       AA
5       44       AA
6       44      yoyp
7       44      yoyp

预期产量

card type
88    2
44    3

我的方法可行,但是我想学习一种更好的方法

d= df[df.type== 'AA']

然后我使用groupby

d.groupby(['card']).type.count()

2 个答案:

答案 0 :(得分:0)

如果要使用分组方式,

 df.loc[df['type']=='AA'].groupby('card')['type'].agg({'count'})
 #output
       count
  card  
  44    3
  88    2

答案 1 :(得分:0)

@miradulo用户的好答案

df.loc[df.type == 'AA', 'card'].value_counts()