#python #pandas #dataframe #datetime
#python #pandas #фрейм данных #дата и время
Вопрос:
У меня есть фрейм данных pandas с периодами времени во втором столбце. Каждый период представляет 30 минут и длится до 48 периодов (24 часа). Есть ли какой-нибудь способ изменить целые числа, представляющие периоды, в формат времени и объединить его со столбцом даты для полного datetime? Например, 1 становится 00:30, 2 становится 01:00, 3 становится 01:30 и так далее.
Ответ №1:
Вы можете преобразовать столбец ДАТЫ в datetime и добавить timedelta в 30 минут, умноженное на ПЕРИОД.
import pandas as pd
df = pd.DataFrame({'DATE':['2015-01-03', '2015-01-03', '2015-01-03'],
'PERIOD':[1,2,3]})
df['DATETIME'] = pd.to_datetime(df['DATE']) df['PERIOD'] * pd.Timedelta(30, unit='min')
# df
# DATE PERIOD DATETIME
# 0 2015-01-03 1 2015-01-03 00:30:00
# 1 2015-01-03 2 2015-01-03 01:00:00
# 2 2015-01-03 3 2015-01-03 01:30:00
Комментарии:
1. Спасибо, ты спасатель!