Более эффективный способ округлять дневные метки времени с помощью панд

Я импортировал некоторые временные метки в кадр Pandas (через MongoDBclient). Они в микросекундах. Я хотел бы, чтобы округлить до Дня. Я видел предыдущий вопрос об использовании np.round при преобразовании в целые и обратно, но это не сработало (я попытался наложить деление на 3600 x 24 x 100000, но это не сработало).

У меня есть довольно простая версия, но она кажется ДЕЙСТВИТЕЛЬНО неэффективной. Чего мне не хватает ни в одном to_datetime, или np.round пример.

df['doa'] = df['doa'].map(lambda x: x.strftime("%Y-%m-%d")
pd.to_datetime(df['doa'])

Обратите внимание, что это не индексы, поэтому я не могу использовать частотный трюк.

1 ответ

Есть такой запрос, который предполагает, что нет хорошего способа: ENH: добавить метод округления в DatetimeIndex/TimedeltaIndex

Тем не менее, в статье, которую я нашел, также есть такой подход на несколько минут, который я мог бы изменить:

pd.DatetimeIndex (((dti.asi8 / (1e9 * 60)). круглые ()*1e9*60).astype(np.int64))

Округление Pandas Timestamp до минут

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