Объединение фрейма данных pandas с использованием столбца datetime

#python #pandas #data-science

#python #pandas #наука о данных

Вопрос:

Это выдержка из моего фрейма данных с формой (7800, 3)

              datetime   ui1 ui2
0 2019-01-01 00:12:45  0.20   4
1 2019-01-01 01:04:17  0.12  36
2 2019-01-01 04:27:01  0.63   7
3 2019-01-01 06:31:09  0.31  40
4 2019-01-01 07:43:28  0.48   9
 

Я хочу объединить фрейм данных в ячейки, используя столбец datetime с интервалом в 3 часа, чтобы выглядеть следующим образом

              datetime  ui1 ui2  ui1a ui2a
0 2019-01-01 00:00:00  nan nan   nan  nan
1 2019-01-01 00:03:00 0.20   4  0.12   36
2 2019-01-01 00:06:00 0.63   7   nan  nan
3 2019-01-01 00:09:00 0.31  40  0.48    9
 

Ответ №1:

Я порекомендую сохранить групповую ячейку в list

 out = df.groupby(pd.Grouper(key='datetime',freq='3H')).agg(list)
Out[386]: 
                              ui1      ui2
datetime                                  
2019-01-01 00:00:00   [0.2, 0.12]  [4, 36]
2019-01-01 03:00:00        [0.63]      [7]
2019-01-01 06:00:00  [0.31, 0.48]  [40, 9]