python group by和count()多列

python group by和count()多列,python,pandas-groupby,Python,Pandas Groupby,我有这样一个数据框: Country A B C UK 1 0 1 US 1 1 1 GB 0 1 1 UK 1 1 1 US 0 1 1 GB 0 1 1 我需要按国家分组,并在值为1的所有列中计数。我一直坚持为所有列设置列==1的条件 结果应该是: Country A B C UK 2 0 2 US 1 2 2 GB 0 2 2 因为您正在计算1,所以只需groupby([])

我有这样一个数据框:

Country  A B C
UK       1 0 1
US       1 1 1
GB       0 1 1
UK       1 1 1
US       0 1 1
GB       0 1 1
我需要按国家分组,并在值为1的所有列中计数。我一直坚持为所有列设置列==1的条件

结果应该是:

Country  A B C
UK       2 0 2
US       1 2 2
GB       0 2 2

因为您正在计算1,所以只需
groupby([]).sum()

df['country']=df.index#生成新列
结果=df.groupby(['country']).sum()
这将为您提供以下结果:

abc
国家
GB 02 2
英国2112
美国12
更多信息

我不理解您的条件,所有行都是1的列求和?为什么
UK
2,0,2而不是2,1,2?这将返回
2,1,2
UK
而不是OP要求的
2,0,2
。我假设这是一个输入错误