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

如何在Pandas DataFrame中将奇数小时时间戳规整为偶数小时

解决方案

你可以通过pandas的时间处理方法快速实现需求,两种常用实现方式如下:

方法1:直接用时间向上取整(最简洁)

该方法利用pandas内置的时间间隔取整规则,刚好匹配你需要的2小时间隔对齐逻辑:

import pandas as pd

# 第一步:确保Time索引为datetime格式,若读入时已经是datetime类型可跳过这一步
df.index = pd.to_datetime(df.index)

# 第二步:将时间索引向上取整到2小时间隔
df.index = df.index.ceil('2H')

方法2:手动判断小时奇偶(更灵活可控)

如果需要自定义调整规则,可以显式判断小时的奇偶性再做调整:

import pandas as pd

df.index = pd.to_datetime(df.index)
# 偶数小时保持不变,奇数小时加1小时进位到下一个偶数点
df.index = df.index.where(
    df.index.hour % 2 == 0,
    df.index + pd.Timedelta(hours=1)
)

可选:处理重复索引

如果调整后出现相同的时间索引,可以根据业务需求做聚合处理,示例如下:

# 示例:对相同时间的Values字段求和
df = df.groupby(level=0).sum()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 23:27:03