You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何对含DateTime列的DataFrame按月份分组,实现多列不同聚合?

按月份分组聚合DataFrame的实现方法

步骤说明与代码示例

假设你的DataFrame名为df,可通过以下步骤实现需求:

  1. 确认/转换日期格式(若Date列尚未转为datetime类型):
import pandas as pd
df['Date'] = pd.to_datetime(df['Date'])
  1. 按月份分组并执行聚合操作:
    利用dt.to_period('M')将日期转换为年月周期(格式如2019-05),再通过agg()方法分别指定不同列的聚合规则:
monthly_summary = df.groupby(df['Date'].dt.to_period('M')).agg(
    总游戏次数=('Games Played', 'sum'),
    平均评分=('Rating', 'mean')
).reset_index()

代码解释

  • df['Date'].dt.to_period('M'):将Date列的日期转换为年月周期,确保分组严格按自然月划分,避免按天或其他时间单位分组的误差。
  • agg():通过关键字参数定义各列的聚合逻辑:
    • 总游戏次数=('Games Played', 'sum'):对"Games Played"列按月份求和,结果列命名为"总游戏次数"
    • 平均评分=('Rating', 'mean'):对"Rating"列按月份求算术平均,结果列命名为"平均评分"
  • reset_index():将分组后的年月周期从索引转为普通列,方便后续查看、筛选或导出数据。

示例输出

运行代码后,monthly_summary的结构大致如下:

Date总游戏次数平均评分
2019-05822.0
2023-011032.0

内容的提问来源于stack exchange,提问作者imad97

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 23:55:18