python - 需要按月和地区分组并在 Python Pandas 中返回总和
问题描述
嗨,我有一个如下所示的数据集
region Month price
AI February 8827
AI April 9000
AI July 3453
ANZ February 1714
ANZ April 2991
ANZ July 3453
我需要用月份检索特定区域的总和。
例如:
AI 21280(所有月份的总和)
ANZ 6444(仅四月和七月的总和)
需要在 python 中执行此操作,我尝试使用 groupby 但无法正确设置月份。
解决方案
您可以df.groupby
尝试dict-comprehension
:
>>> {key: group['price'].sum() if key == 'AI'
else group[group['Month'] != 'February']['price'].sum()
for key, group in df.groupby('region')}
{'AI': 21280, 'ANZ': 6444}
推荐阅读
- python - 在 Kubernetes 中运行的 Dockerized API 服务器响应时间慢?
- python - 在 Vmware 中出现错误“pip 配置了需要 TLS/SSL 的位置,但是 Python 中的 ssl 模块不可用。”
- python - 根据该行中的值以及前几行获取一行熊猫数据框
- c# - 映射多对多关系时自动映射器导致多个数据库调用
- php - WordPress 媒体库挂钩和过滤器在 2 个函数之间传递变量
- scala - Scala,我可以将类构造函数参数(未定义为隐式)作为隐式值传递吗?
- c++ - 模板编程初学者问题
- python - 如何使用 Nginx 反向代理部署 Telegram Bot
- javascript - 当我使用 aot 构建时,main.bundle 超过 14 mb
- ruby-on-rails - Rails 认为新路由是一个 id 并尝试使用 #show 方法