У меня есть фрейм данных, содержащий столбец даты и столбец суммы. Столбец даты состоит из информации о часах и дате. Для каждого дня есть 24 записи для каждого часа дня. Мне нужно создать новый столбец, который показывает сумму, которая относится к 24 часам до даты и времени для этой строки.
Например, для «2019-11-06 18:00:00», новыйВ столбце должна отображаться информация о сумме для «2019-11-05 18:00:00». Проблема в том, что мы должны делать с первой записью, поскольку у нее нет предыдущих дат. Я думаю, что могу удалить первую запись при создании нового столбца, но сейчас я получаю KeyError, так как первая запись не имеет предыдущей даты. Как обойти KeyError?
Как выглядит фрейм данных: скриншот фрейма данных
[in]:
hours24_c = df["Date"]-timedelta(hours=24)
df["hours24"] = df["amount"].loc[hours24_c]
[out]:
KeyError: "None of [DatetimeIndex(['2015-12-30 00:00:00', '2015-12-30 01:00:00',\n '2015-12-30 02:00:00', '2015-12-30 03:00:00',\n '2015-12-30 04:00:00', '2015-12-30 05:00:00',\n '2015-12-30 06:00:00', '2015-12-30 07:00:00',\n '2015-12-30 08:00:00', '2015-12-30 09:00:00',\n ...\n '2019-11-05 14:00:00', '2019-11-05 15:00:00',\n '2019-11-05 16:00:00', '2019-11-05 17:00:00',\n '2019-11-05 18:00:00', '2019-11-05 19:00:00',\n '2019-11-05 20:00:00', '2019-11-05 21:00:00',\n '2019-11-05 22:00:00', '2019-11-05 23:00:00'],\n dtype='datetime64[ns]', length=33744, freq=None)] are in the [index]"