Используя функцию timedelta.round()

Я видел несколько вопросов о том, как определить вашу собственную функцию, которая делает подобные вещи, но я не могу понять, как использовать встроенную функцию timedelta. У кого-нибудь есть пример использования timedelta.round()? У меня есть объекты timedelta, которые я хочу округлить до ближайшего целого дня.

Документация по адресу https://pandas.pydata.org/pandas-docs/stable/generated/pandas.Timedelta.round.html:

Timedelta.round

Округлить Timedelta до указанного разрешения

Параметры:

freq: строка freq, указывающая разрешение округления

Возвращает:
новая Timedelta, округленная до заданного разрешения freq

Повышает: ValueError, если частота не может быть преобразована

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):

Я ответил на свой вопрос. Решением была просто строка "d" в качестве параметра, тогда как я пробовал "день", "дни" и т. Д. Надеюсь, это поможет кому-то нуждающемуся.

Другие вопросы по тегам