Рассмотрим следующий код.
d=pd.DataFrame([[1,'a'],[1,'b'],[2,'c'],[2,'a'],[3,'c'],[4,'a'],[4,'c']],columns=['A','B'])
Я хочу сгруппировать по определенному набору идентификаторов в столбце A - те идентификаторы, которые соответствуют c. В данном случае это 2,3,4. Я написал для него следующий код:
d.groupby(d[d['B']=='c'].A).size().to_frame('size')
Он возвращает
A size
2 1
3 1
4 1
, но я хочу, чтобы он возвратил
A size
2 2
3 1
4 2
, потому что я хочу, чтобы размер указывал наколичество строк, содержащих значение в A. В чем проблема с моим кодом?