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

如何求取DataFrame列中hh-mm-ss格式TimeDelta数据的中位数

解决方法

方法1:直接将已得到的秒数中位数转为hh:mm:ss格式

如果你已经算出了秒级的中位数,比如变量名为median_sec,直接用Python内置的datetime模块转换即可:

import datetime

# 示例中位数秒数对应23:59:17
median_sec = 86357
# 转换为指定格式
result = str(datetime.timedelta(seconds=median_sec))

最终得到的result就是符合要求的23:59:17格式结果。

方法2:无需手动转秒,直接对TimeDelta列计算中位数并格式化

你不需要手动把df['diff']转成秒再计算中位数,pandas原生支持对timedelta类型的列直接计算中位数,操作更简洁:

import pandas as pd

# 先确认df['diff']为timedelta类型,若为字符串可先转换
df['diff'] = pd.to_timedelta(df['diff'])

# 直接计算中位数并转成字符串格式
median_result = str(df['diff'].median())

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 00:09:05