Я пытаюсь переиндексировать мой фрейм данных с двумя переменными даты и времени, которые определяют продолжительность. Я хочу, чтобы мой фрейм данных был проиндексирован одной переменной datetime с шагом в 1 минуту с отсутствующими значениями / строками, где нет наблюдения.
Мои данные выглядят примерно так
DMS = pandas.DataFrame({
'ID':[1,1,2,3],
'SentTime':['2016-01-22 14:47:05.486877', '2016-01-22 14:53:03.234377', '2016-01-22 14:45:09.434877','2016-01-22 14:48:05.486877'],
'EndTime':['2016-01-22 14:50:10.454347', '2016-01-22 14:57:45.456877', '2016-01-22 14:56:05.456877','2016-01-22 14:52:05.486877'],
'BinaryVariable1':[0, 1, 0, 0],
'BinaryVariable2':[0, 0, 0, 1],
'StringVariable':['ABC','DE','FG','XYZ']
})
Я хочу, чтобы этот фрейм данных выглядел как
ID Time BinaryVariable1 BinaryVariable2 StringVariable
1 1/22/2016 14:45 NaN NaN NaN
1 1/22/2016 14:46 NaN NaN NaN
1 1/22/2016 14:47 0 0 ABC
1 1/22/2016 14:48 0 0 ABC
1 1/22/2016 14:49 0 0 ABC
1 1/22/2016 14:50 0 0 ABC
1 1/22/2016 14:51 NaN NaN NaN
1 1/22/2016 14:52 NaN NaN NaN
1 1/22/2016 14:53 1 0 DE
1 1/22/2016 14:54 1 0 DE
1 1/22/2016 14:55 1 0 DE
1 1/22/2016 14:56 1 0 DE
1 1/22/2016 14:57 1 0 DE
1 1/22/2016 14:58 NaN NaN NaN
1 1/22/2016 14:59 NaN NaN NaN
1 1/22/2016 15:00 NaN NaN NaN
2 1/22/2016 14:45 0 0 FG
2 1/22/2016 14:46 0 0 FG
2 1/22/2016 14:47 0 0 FG
2 1/22/2016 14:48 0 0 FG
2 1/22/2016 14:49 0 0 FG
2 1/22/2016 14:50 0 0 FG
2 1/22/2016 14:51 0 0 FG
2 1/22/2016 14:52 0 0 FG
2 1/22/2016 14:53 0 0 FG
2 1/22/2016 14:54 0 0 FG
2 1/22/2016 14:55 0 0 FG
2 1/22/2016 14:56 0 0 FG
2 1/22/2016 14:57 NaN NaN NaN
2 1/22/2016 14:58 NaN NaN NaN
2 1/22/2016 14:59 NaN NaN NaN
2 1/22/2016 15:00 NaN NaN NaN
3 1/22/2016 14:45 NaN NaN NaN
3 1/22/2016 14:46 NaN NaN NaN
3 1/22/2016 14:47 NaN NaN NaN
3 1/22/2016 14:48 0 1 XYZ
3 1/22/2016 14:49 0 1 XYZ
3 1/22/2016 14:50 0 1 XYZ
3 1/22/2016 14:51 0 1 XYZ
3 1/22/2016 14:52 0 1 XYZ
3 1/22/2016 14:53 NaN NaN NaN
3 1/22/2016 14:54 NaN NaN NaN
3 1/22/2016 14:55 NaN NaN NaN
3 1/22/2016 14:56 NaN NaN NaN
3 1/22/2016 14:57 NaN NaN NaN
3 1/22/2016 14:58 NaN NaN NaN
3 1/22/2016 14:59 NaN NaN NaN
3 1/22/2016 15:00 NaN NaN NaN
Есть идеи? Я могу создать индекс, используя pandas.date_range
, но у меня есть проблема с включением EndTime
, которое варьируется в зависимости от наблюдения.