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

Pandas中如何将时分、时分秒混合格式统一转为hh:mm:ss格式?

解决方案

方法1:字符串补全法(适合保留超24小时的时长)

因为数据里存在25:45这种超过24小时的计时,用日期解析会自动转成次日时间,这种情况下直接补全秒数更稳妥:

# 给仅含时分的时间补全秒数为00
df7['Chip Time'] = df7['Chip Time'].apply(lambda x: x + ':00' if x.count(':') == 1 else x)

执行后,列中所有值都会变成hh:mm:ss格式,比如25:45转为25:45:00,12:34:34保持不变。

方法2:利用Pandas日期解析(适合标准24小时内的时间)

如果你的时间都是24小时以内的合法时间,可以用pd.to_datetime自动解析混合格式,再格式化输出:

import pandas as pd

# 自动解析混合时间格式,再转为hh:mm:ss字符串
df7['Chip Time'] = pd.to_datetime(df7['Chip Time']).dt.strftime('%H:%M:%S')

注意:这种方法会把25:45解析为次日的01:45:00,需要保留超24小时时长的话,不要用这个方法。

额外:统一格式后转分钟数

如果之后还要计算总分钟数,用Pandas矢量化操作比循环更高效:

# 拆分时分秒并计算总分钟数
df7['Time Mins'] = df7['Chip Time'].str.split(':').apply(lambda x: int(x[0])*60 + int(x[1]) + int(x[2])/60)

内容的提问来源于stack exchange,提问作者Josue V.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 02:45:44