#python #pandas
Вопрос:
У меня есть фрейм данных pandas со столбцами:
- ID
- Дата и время
- Емкость
Я хочу добавить новый столбец в этот фрейм данных с емкостью в течение часа. Например, у меня есть
ID Datetime Capacity
1 20200101 12:23:10 435
Итак, в новом столбце мне нужна емкость записи ID = 1 и Datetime = 13:23:10
Есть ли инструкция для обработки этого?
Уже спасибо!
Ответ №1:
Вы можете добавить 1 hour
в исходный столбец, преобразовать в строки HH:MM:SS
, поэтому возможна фильтрация в boolean indexing
:
Datetime = '13:23:10'
ID = 1
df['Datetime'] = pd.to_datetime(df['Datetime'])
df = df[(df['Datetime'] pd.Timedelta('1H')).dt.strftime('%H:%M:%S').eq(Datetime) amp; df['ID'].eq(ID)]
print (df)
ID Datetime Capacity
0 1 2020-01-01 12:23:10 43