У меня есть фрейм данных (пример ниже):
date = ['23/8/2019'] * 3 + ['24/8/2019'] * 3
time = ['9:00:00 PM', '10:00:00 PM', '11:00:00 PM', '12:00:00 AM', '1:00:00 AM', '2:00:00 AM']
datetime = pd.to_datetime(pd.Series(date) + ' ' + pd.Series(time))
value = [10,20,40,20,30,5]
df = pd.DataFrame(list(zip(date,time,datetime,value)), columns=['Date','Time','Datetime','Value'])
Date Time Datetime Value
0 23/8/2019 9:00:00 PM 2019-08-23 21:00:00 10
1 23/8/2019 10:00:00 PM 2019-08-23 22:00:00 20
2 23/8/2019 11:00:00 PM 2019-08-23 23:00:00 40
3 24/8/2019 12:00:00 AM 2019-08-24 00:00:00 20
4 24/8/2019 1:00:00 AM 2019-08-24 01:00:00 30
5 24/8/2019 2:00:00 AM 2019-08-24 02:00:00 5
Как мне заполнить пропущенные значения так, чтобы фрейм данных начинался с 12:00:00 AM первого дня и заканчивался 11: 00:00 вечера последнего дня, означая, что это даст что-то вроде этого:
Date Time Datetime Value
0 23/8/2019 12:00:00 AM 2019-08-23 00:00:00 NA
1 23/8/2019 1:00:00 AM 2019-08-23 01:00:00 NA
.
.
.
22 23/8/2019 9:00:00 PM 2019-08-23 21:00:00 10
23 23/8/2019 10:00:00 PM 2019-08-23 22:00:00 20
24 23/8/2019 11:00:00 PM 2019-08-23 23:00:00 40
25 24/8/2019 12:00:00 AM 2019-08-24 00:00:00 20
26 24/8/2019 1:00:00 AM 2019-08-24 01:00:00 30
27 24/8/2019 2:00:00 AM 2019-08-24 02:00:00 5
.
.
.
47 24/8/2019 10:00:00 PM 2019-08-24 22:00:00 NA
48 24/8/2019 11:00:00 PM 2019-08-24 23:00:00 NA