python - 如何在Python中的pandas中按其他列中的值求和?

标签 python pandas machine-learning scikit-learn

嗨,我正在使用 pandas 处理一些数据。

我遇到了一个问题,但在这里我会尝试简化它。

假设我有一个如下所示的数据集:

      # Incidents            Place           Month
0          3                   A               1
1          5                   B               1
2          2                   C               2
3          2                   B               2
4          6                   C               3
5          3                   A               1

所以我想按地点对事件数量进行求和,也就是说,我想要得到类似的结果

P #
A 3 
B 7(5+2) 
C 8(2+6) 

存储在 pandas DataFrame 中。目前我不关心其他专栏。

下一个问题是,现在如果我也想使用月份列中的数据,我希望结果看起来像

P M  #
A 1  6(3+3)
B 1  5
B 2  2
C 2  2
C 3  6

如何在 pandas 中实现这些结果?我尝试过 groupby 和其他一些功能,但我无法达到目的...

感谢任何帮助!

最佳答案

你可以这样做:

In [35]: df
Out[35]:
   # Incidents Place  Month
0            3     A      1
1            5     B      1
2            2     C      2
3            2     B      2
4            6     C      3
5            3     A      1

In [36]: df.groupby('Place')['# Incidents'].sum().reset_index()
Out[36]:
  Place  # Incidents
0     A            6
1     B            7
2     C            8

In [37]: df.groupby(['Place', 'Month'])['# Incidents'].sum().reset_index()
Out[37]:
  Place  Month  # Incidents
0     A      1            6
1     B      1            5
2     B      2            2
3     C      2            2
4     C      3            6

请查找here包含大量示例的 Pandas 文档。

关于python - 如何在Python中的pandas中按其他列中的值求和?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40200904/

相关文章:

python - 具有日期时间索引和不同长度的三个系列的总和?

python - 循环翻页,直到找不到下一个链接

python - 我如何将我的想法转移到 'vectorize my computation' 而不是使用 'for-loops' ?

c++ - Python 和 win32 API - 使用 C 文件

python - 将 pandas 中的数据框从迭代列表转换为适当的列和行

python - 如何在 Python 中从 OSM 文件中提取和可视化数据

python - tensorflow shuffle_batch和feed_dict错误

python - 训练多输出 keras 模型

algorithm - 聚类给定的成对距离和未知的聚类数?

python - Python中使用unittest的相对导入