Python подсчитать количество значений в интервале
У меня есть большой датафрейм вида :
id time(minutes)
1 23
2 25
3 123
4 245
5 9524
6 244
7 1
8 3
... .....
Как можно посчитать количество id в промежутках
- от 0 до 5 минут,
- от 5 минут до 10 минут,
- от 10 минут до 15 минут,
- от 15 до 20,
- от 20 до 25
- и от 25 до 30
Ответы (1 шт):
Автор решения: CrazyElf
→ Ссылка
Если я правильно понял суть вопроса, то можно использовать pandas.cut и groupby:
import pandas as pd
import numpy as np
df = pd.DataFrame({'time': np.random.randint(0, 59, size=1000)})
df['interval'] = pd.cut(df['time'], bins=[x*5 for x in range(13)], include_lowest=True)
df.groupby('interval').count()
Вывод:
time
interval
(-0.001, 5.0] 103
(5.0, 10.0] 69
(10.0, 15.0] 90
(15.0, 20.0] 72
(20.0, 25.0] 80
(25.0, 30.0] 88
(30.0, 35.0] 88
(35.0, 40.0] 95
(40.0, 45.0] 91
(45.0, 50.0] 95
(50.0, 55.0] 76
(55.0, 60.0] 53
Хотя можно и проще - просто разделить время на 5 и группировать по этому значению.