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

如何获取两个Timestamp之间的中间时间戳(小时精度)

获取两个Timestamp的中间小时精度时间戳

问题描述

给定两个pandas Timestamp:

import pandas as pd
t1 = pd.Timestamp('2020-01-01 00:00:00')
t2 = pd.Timestamp('2020-01-07 06:00:00')

需要获取它们之间恰好处于中间位置、精度为1小时的时间戳,示例结果为:

tm = pd.Timestamp('2020-01-04 03:00:00')

若时间间隔对应的小时数为偶数(即存在两个中间整点时间戳),任选其一即可。

解决方案

利用pandas的Timestamp和Timedelta运算特性,直接计算中间时间并保证小时精度:

import pandas as pd

t1 = pd.Timestamp('2020-01-01 00:00:00')
t2 = pd.Timestamp('2020-01-07 06:00:00')

# 计算两个时间的中间间隔时长
half_interval = (t2 - t1) / 2
# 得到理论中间时间
middle_time = t1 + half_interval
# 确保结果为小时精度(若理论中间时间非整点,可任选floor/ceil取整)
middle_time_hourly = middle_time.floor('H')  # 或使用middle_time.ceil('H')

print(middle_time_hourly)
# 输出:Timestamp('2020-01-04 03:00:00')

逻辑说明

  1. 计算中间间隔:通过(t2 - t1)获取时间差,除以2得到从t1到中间点的时长
  2. 生成中间时间:将中间间隔加到t1上,得到理论的中间时刻
  3. 保证小时精度:如果理论中间时刻不是整点(即时间间隔总小时数为奇数),使用floor('H')向下取整或ceil('H')向上取整,任选其一即可满足需求

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 19:09:28