Мне часто нужно знать, сколько записей у меня есть в каждой группе в кадре данных в Пандах. Следующее делает это, но возвращает одно значение для каждого столбца в моем фреймворке.Количество групп. Почему каждый столбец?
df.groupby(['A', 'B', 'C']).count()
То есть, если у меня есть, скажем 20
столбцов (где A
, B
и C
три из них), он будет возвращать 17
счетчики, все одинаковые (по крайней мере, каждый раз, когда я сделал это) в пределах каждого группа.
- В чем причина этого?
- Есть ли способ ограничить счет только одним столбцом? (или вернуть его только одно значение для каждой группы?)
- Будет ли это ускорять подсчеты каким-либо образом?
Метод dataFrameGroupBy.count
не кажется, есть аргумент, чтобы указать на столбцы, чтобы сделать счет (я не мог найти его на API ref)
Re # 2: Вы можете выбрать столбец D с этим синтаксисом: 'df.groupby ('A') ['D']. Count()'. Странно, что я не могу найти это в стандартной документации, но вот старое сообщение в блоге (смотрите ближе к середине): http://wesmckinney.com/blog/?p=125 – JohnE