我有一个需要分析的伦敦犯罪数据集。下面的数据框是该数据框的摘要。我正在尝试查找2018年的4个不同月份中每个地区内所有犯罪的总和。
sleekxmpp
所需的输出将是:
Crime_type | Crime sub_type | District | 201803 | 201804 | 201805 | 201806 |
----------------------------------------------------------------------------------------------
Arson and Criminal Damage | Arson | Westminster | 45 | 90 | 54 | 36 |
Arson and Criminal Damage | Criminal Damage | Westminster | 64 | 35 | 74 | 63 |
Arson and Criminal Damage | Arson | Bexley | 54 | 19 | 23 | 98 |
Arson and Criminal Damage | Criminal Damage | Bexley | 98 | 63 | 89 | 87 |
我知道Pandas按功能分组可以完成我想达到的目的,但是我不确定如何在这种情况下正确使用它,找到多个列的总和。我将其按地区分组,并在4个月的每一列中找到总和,但我希望在所有4列中找到总和,而不是单独找到。
这是我用来实现上述目标的代码。
Westminster: 461
Bexley: 531
答案 0 :(得分:1)
一种解决方案(类似于评论)将是:
year_months_cols = ["201803", "201804", "201805", "201806"]
df["sum_months"] = df[year_months_cols].sum(axis=1)
df.groupby("District")["sum_months"].agg("sum")