gpt4 book ai didi

python - Pandas:将秒数转换为时间增量或时间

转载 作者:行者123 更新时间:2023-11-30 22:12:00 27 4
gpt4 key购买 nike

我在数据框中有一定的秒数,比方说:

s = 122

我想将其转换为以下格式:

00:02:02.0000

为此,我尝试按以下方式使用 to_datetime:

 pd.to_datetime(s, format='%H:%M:%S.%f')

但是这不起作用:

ValueError: time data 122 does not match format '%H:%M:%S.%f' (match)

我还尝试使用 unit='ms' 而不是格式,但随后我得到的日期早于时间。如何修改我的代码以获得所需的转换?

如果可能的话,需要使用 pandas 在数据框中完成。

编辑:下面的 jezrael 和 MedAli 解决方案都是有效的,但是 Jezrael 解决方案的优点是不仅可以使用整数,还可以使用 Datetime.time 作为输入!

最佳答案

使用to_timedelta将秒转换为纳秒:

df = pd.DataFrame({'sec':[122,3,5,7,1,0]})

df['t'] = pd.to_timedelta(df['sec'] * 10**9)

print (df)
sec t
0 122 00:02:02
1 3 00:00:03
2 5 00:00:05
3 7 00:00:07
4 1 00:00:01
5 0 00:00:00

关于python - Pandas:将秒数转换为时间增量或时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51247535/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com