У меня есть фрейм данных, где строки - время, столбцы - дата, а каждое значение записи - частота.Как я мог генерировать гистограмму, показывающую в каждом периоде 30 минут в день, сколько частот там?
В настоящее время я использую df.groupby(pd.Grouper(freq='30Min')).count()
.Однако count()
не принимает значения ввода.
Например, кадр данных выглядит следующим образом:
03/12 03/13
1:00:01 2 3
1:00:02 3 4
1:31:03 1 2
Токовый выход:
03/12 03/13
1:00:00 2 2
1:30:00 1 1
Требуемый выходдолжно быть:
03/12 03/13
1:00:00 5 7
1:30:00 1 2
Как упомянуто @jezrael, я поставил отметку resample
в своем наборе данных.Вот результаты:
In [270]: %timeit date_df.resample('30Min').count()
7.7 ms ± 10.4 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)
In [271]: %timeit date_df.groupby(pd.Grouper(freq='30Min')).count()
7.99 ms ± 49.9 µs per loop (mean ± std. dev. of 7 runs, 100 loops each)