使用timedelta.round()函数

时间:2018-08-02 19:58:43

标签: python datetime timedelta python-datetime

我已经看到了多个有关如何定义自己的函数的问题,这些函数的功能与此相似,但是我不知道如何使用timedelta的内置函数。有没有人有使用timedelta.round()的示例?我有一些timedelta对象,我想四舍五入到整天。

{{3}}处的文档为:

Timedelta.round

将Timedelta调整为指定的分辨率

参数:

freq:表示舍入分辨率的频率字符串

返回:
新的Timedelta舍入到给定的freq

分辨率

提高: 如果无法转换频率,则会发生ValueError

2 个答案:

答案 0 :(得分:1)

我已经回答了我自己的问题。解决方案只是将字符串“ d”作为参数,而我尝试使用“ day”,“ days”等。希望这对有需要的人有所帮助。

答案 1 :(得分:1)

这个问题已经回答了,但是为了更好的理解,我把它设为MWE:

import pandas as pd
df = pd.Series(pd.to_timedelta([
        '0 days +01:01:02.123',
        '0 days +04:03:04.651']))
df.dt.round('5s')  #Rounds to 5sec

输出为:

0   01:01:00
1   04:03:05
dtype: timedelta64[ns]

其他有用且相关的问题(timedelta的用法类似于datetime):