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

Python datetime格式转换问题:时间戳转格式报错及年份修正需求

Python pandas日期时间格式转换解决方案

错误原因说明

  • 拆分后单独用时间列匹配含月日的格式,输入内容和格式规则不匹配,触发ValueError
  • Python datetime标准库不识别24:00:00格式,需要提前转换为下一天的0点

完整解决代码

不需要提前拆分日期时间列,直接处理原始Date/Time列即可:

import pandas as pd

# 先标记所有含24:00:00的行,解决Python不识别24点格式的问题
is_24h = df['Date/Time'].str.contains('24:00:00')
# 将24:00:00替换为当天00:00:00,后续再统一偏移日期
df.loc[is_24h, 'Date/Time'] = df.loc[is_24h, 'Date/Time'].str.replace('24:00:00', '00:00:00')

# 补全实际年份,这里示例为2024年,可根据你的实际数据修改
df['datetime'] = pd.to_datetime('2024/' + df['Date/Time'], format='%Y/%m/%d  %H:%M:%S')
# 给原24点的行日期加1天,对应实际时间
df.loc[is_24h, 'datetime'] = df.loc[is_24h, 'datetime'] + pd.Timedelta(days=1)

# 去掉秒级信息,二选一即可
# 选项1:保留datetime格式,向下取整到分钟(推荐,方便后续时间计算)
df['datetime'] = df['datetime'].dt.floor('min')
# 选项2:转换为字符串格式,直接去掉秒展示
# df['datetime'] = df['datetime'].dt.strftime('%Y-%m-%d %H:%M')

结果说明

  • 最终生成的datetime列已经合并了日期时间,无需拆分多列
  • 已经去掉了秒级信息,符合10分钟间隔的数据特性
  • 年份可以根据你的实际数据修改代码里的2024为对应年份即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 02:15:07