Вставьте отсутствующую дату и время в DataFrame - PullRequest
0 голосов
/ 01 ноября 2018

у меня есть pd.DataFrame

    utc_time            year  month day weekday hour
0   2017-01-01 21:00:00 2017    1   1   7   21
1   2017-01-01 23:00:00 2017    1   1   7   23
2   2017-01-02 00:00:00 2017    1   2   1   0
3   2017-01-02 01:00:00 2017    1   2   1   1

В df выше час 22 не отображается. Я хочу каждый час включать в фрейм данных, как:

    utc_time            year  month day weekday hour
0   2017-01-01 21:00:00 2017    1   1   7   21
0   2017-01-01 22:00:00 2017    1   1   7   22
1   2017-01-01 23:00:00 2017    1   1   7   23
2   2017-01-02 00:00:00 2017    1   2   1   0
3   2017-01-02 01:00:00 2017    1   2   1   1

Как построить функцию для определения пропущенного часа и вставить в фрейм данных?

1 Ответ

0 голосов
/ 01 ноября 2018

IIUC resample + bfill и ffill

s=df.set_index('utc_time').resample('1H')
(s.ffill()+s.bfill())/2
Out[163]: 
                     year  month  day  weekday  hour
utc_time                                            
2017-01-01 21:00:00  2017      1    1        7    21
2017-01-01 22:00:00  2017      1    1        7    22
2017-01-01 23:00:00  2017      1    1        7    23
2017-01-02 00:00:00  2017      1    2        1     0
2017-01-02 01:00:00  2017      1    2        1     1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...