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

含不规则时间戳的pandas DataFrame如何按15分钟间隔重采样

Pandas 15分钟间隔重采样实现方案

你调用resample触发TypeError的核心原因是DataFrame的索引不是合法的DatetimeIndex类型。此前转换日期类型未生效,大概率是仅处理了时分秒字符串,没有补全日期维度,导致pandas无法将其识别为可用于重采样的时间索引。

具体实现步骤

  • 将hour_min字符串列转换为datetime类型,无日期信息可补全统一的虚拟日期(不会影响15分钟维度的聚合结果)
  • 将转换后的时间列设置为DataFrame索引
  • 调用resample执行15分钟间隔聚合,可根据需求选择求和、取均值、取区间首尾值等聚合逻辑

可运行代码示例

import pandas as pd

# 假设原始DataFrame变量名为df
# 转换时间列,补全统一虚拟日期避免格式识别错误
df['datetime'] = pd.to_datetime('2024-01-01 ' + df['hour_min'], format='%Y-%m-%d %H:%M:%S')
# 设置时间列为索引
df = df.set_index('datetime')
# 按15分钟重采样求和,如需其他聚合逻辑可替换sum为mean、last、first等
res = df['value'].resample('15T').sum()

# 如输出不需要日期前缀,可提取时间部分作为最终索引
res.index = res.index.time

说明

如果你的原始数据本身包含日期字段,无需补全虚拟日期,直接拼接完整时间字符串转换为DatetimeIndex即可。默认15分钟重采样采用左闭右开区间规则,例如09:05:51会被归入09:00:00-09:14:59的15分钟统计区间。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 17:06:01