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

如何基于日期索引聚合求和生成新的Pandas DataFrame

Pandas按日期维度聚合求和实现方案

针对你拥有的以yyyy-mm-dd hh:mm:ss格式为索引的DataFrame,按日期维度聚合并对两列求和可以通过以下两种简洁方法实现:

方法一:使用resample按天聚合

resample是Pandas针对时间序列数据的专用聚合工具,指定频率为'D'(代表天)即可按日期分组求和:

import pandas as pd

# 构造示例数据(模拟你的原DataFrame)
data = {
    'Column 1': [2, 3, 3, 2],
    'Column 2': [1, 1, 1, 10]
}
time_index = pd.to_datetime([
    '2022-11-18 12:41:00',
    '2022-11-18 12:42:00',
    '2022-11-19 21:43:00',
    '2022-11-19 21:45:00'
])
df = pd.DataFrame(data, index=time_index)

# 按日期聚合求和
daily_sum_df = df.resample('D').sum()
# 将索引重命名为'Time'(匹配你的期望格式)
daily_sum_df.index.name = 'Time'

print(daily_sum_df)

输出结果:

Time        Column 1  Column 2
2022-11-18         5         2
2022-11-19         5        11

方法二:使用groupby按索引日期分组

通过提取索引的date属性进行分组,同样可以实现按日期求和:

# 按索引的日期部分分组求和
daily_sum_df = df.groupby(df.index.date).sum()
# 将分组后的日期索引转换为datetime格式并命名
daily_sum_df.index = pd.to_datetime(daily_sum_df.index)
daily_sum_df.index.name = 'Time'

print(daily_sum_df)

输出结果与方法一完全一致。

注意事项

如果你的DataFrame索引尚未转换为datetime类型,需要先执行以下转换:

df.index = pd.to_datetime(df.index)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 02:50:39