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

如何计算pandas DataFrame中字符串格式时间列的平均值?

计算pandas DataFrame中字符串时间列的平均值

步骤1:将字符串时间转换为时间差类型

首先要把字符串格式的时间转换成pandas可计算的timedelta类型,用pd.to_timedelta()函数就能直接解析HH:MM:SS.sss格式的字符串:

import pandas as pd

times = ['00:00:01.111', '00:00:02.222', '00:03:33.333', '04:44:44.444']
df = pd.DataFrame({'Times': times})

# 新增时间差列用于计算
df['TimeDelta'] = pd.to_timedelta(df['Times'])

步骤2:计算时间平均值

转换完成后,直接对TimeDelta列调用mean()方法即可得到所有时间的平均值:

avg_time = df['TimeDelta'].mean()
print(avg_time)
# 输出结果:01:11:05.277500

可选:将平均值转回字符串格式

如果需要和原列格式一致(保留三位小数),可以对结果做简单格式化:

# 拆分秒数部分,仅保留三位小数
avg_time_str = f"{str(avg_time).split('.')[0]}.{str(avg_time).split('.')[1][:3]}"
print(avg_time_str)
# 输出结果:01:11:05.277

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 01:07:11