Pandas Функция Groupby применяется для подсчета значений больше нуля

Pandas Функция группового применения для подсчета значений больше нуля

Я использую groupby и agg следующим образом:

df.groupby('group')['a'].agg({'mean' : np.mean, 'std' : np.std})

и я также хотел бы подсчитать значения выше нуля в том же столбце ['a']

следующая строка делает счет, который я хочу,

sum(x > 0 for x in df['a'])

но я не могу заставить его работать при подаче заявки на groupby.

Следуя примеру применения вычисления pandas к группе, я попытался:

df.groupby('group')['a'].apply(sum(x > 0 for x in df['a']))

но я получаю сообщение об ошибке: AttributeError: объект 'numpy.int32' не имеет атрибута ' module'

Кто-нибудь может предложить, как это можно сделать?

Ответ 1

От комментариев:

 .agg({'pos':lambda ts: (ts > 0).sum()}) # –  behzad.nouri Mar 31 at 0:00 

Это мой вклад в отставание оставшихся без ответа вопросов:) Кредиты для behzad.nouri