Если вы действительно хотите просто groupby
на has_acc_id_and_cus_id
, тогда вам нужна команда ...
df100 = Transactions[['has_acc_id_and_cus_id', 'net_revenue']].groupby(['has_acc_id_and_cus_id']).agg(['sum', 'mean', 'count'])
Это подмножество только той переменной, которую вы хотите суммировать (has_acc_id_and_cus_id
)и переменная, которую вы хотите суммировать (net_revenue
) ...
Transactions[['has_acc_id_and_cus_id', 'net_revenue']]
... затем вы группируете их по has_acc_id_and_cus_id
...
Transactions[['has_acc_id_and_cus_id', 'net_revenue']].groupby('has_acc_id_and_cus_id')
...перед тем, как затем применить функцию agg()
, чтобы получить желаемую статистику.
Ошибка, которую вы сделали, основываясь на вашей заявленной цели суммирования только с помощью has_acc_id_and_cus_id
, имела четыре другие переменные, которые вы группировали по (acc_reg_year
, acc_reg_month
, year
и month
).
Если вы действительно хотите получить сводку по has_acc_id_and_cus_id
в пределах всех остальных, тогда ваш исходный код был верным,но, возможно, отсутствуют значения в одном или нескольких из acc_reg_year
, acc_reg_month
, year
и month
при has_acc_id_and_cus_id == 0
, поэтому проверьте свои данные ...
Transactions[Transactions[`has_acc_id_and_cus_id`] == 0][[`acc_reg_year`, `acc_reg_month`, `year`, `month`]].head(100)