想统计某些公司在各个省份开分公司的情况
df = pd.DataFrame([['A公司', 1, 2, 3, 4, 5], ['B公司', 0, 0, 1, 0, 0], ['C公司', 2, 3, 4, 5, 0]], columns=['公司名', '北京', '江苏', '浙江', '上海', '广东'], index=None)
# df_sum = df.sum() # 全部列求和
df_sum = df[['北京', '江苏', '浙江', '上海', '广东']].sum() # 指定列求和,默认是每列求和
df.loc[df.index.max()+1] = df_sum
df.loc[df.index.max(),'公司名'] = '各省合计'
print(df)
得到结果如下:
公司名 | 北京 | 江苏 | 浙江 | 上海 | 广东 |
---|---|---|---|---|---|
A公司 | 1 | 2 | 3 | 4 | 5 |
B公司 | 0 | 0 | 1 | 0 | 0 |
C公司 | 2 | 3 | 4 | 5 | 0 |
各省合计 | 3 | 5 | 8 | 9 | 5 |
df = pd.DataFrame([['A公司', 1, 2, 3, 4, 5], ['B公司', 0, 0, 1, 0, 0], ['C公司', 2, 3, 4, 5, 0]], columns=['公司名', '北京', '江苏', '浙江', '上海', '广东'], index=None)
df['公司合计'] = df.sum(axis=1) # 每行求和
# df['公司合计'] = df[df['公司名'] == 'A公司'].sum(axis=1) # 指定行求和
print(df)
得到结果如下:
公司名 | 北京 | 江苏 | 浙江 | 上海 | 广东 | 公司合计 |
---|---|---|---|---|---|---|
A公司 | 1 | 2 | 3 | 4 | 5 | 15 |
B公司 | 0 | 0 | 1 | 0 | 0 | 1 |
C公司 | 2 | 3 | 4 | 5 | 0 | 14 |