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

如何使用Python计算数据集中起止时间的小时差值

计算时间差小时数的实现方法

假设你已经完成了起止时间的datetime格式转换,操作步骤如下:

核心计算逻辑

两个datetime64类型的列相减会得到timedelta64类型的时间差结果,调用.dt.total_seconds()转为总秒数后除以3600,即可得到精确的小时差值,该方法支持跨天的时间差计算,不会丢失精度。

代码示例

# 1. 新建时间差列,结果可正可负,结束时间早于开始时间会得到负数
df['duration_hour'] = (df['End Date'] - df['Start Date']).dt.total_seconds() / 3600

# 2. 如果需要统一为正数耗时,可添加abs()取绝对值
# df['duration_hour'] = abs((df['End Date'] - df['Start Date']).dt.total_seconds() / 3600)

# 3. 保存为新CSV文件
df.to_csv('result_with_duration.csv', index=False)

注意事项

  • 不要直接使用.dt.hour获取小时数:该属性仅返回timedelta中不足1天的小时部分,跨天的时间差计算会出现结果错误
  • 如果仅需要整数小时结果,可将除法替换为整除// 3600,或对结果使用round()保留指定小数位数

内容的提问来源于stack exchange,提问作者markovv.sim

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 03:57:04