Предположим, у меня есть такой фрейм данных:
Код: Выделить всё
data = {
"Town": ["F", "A", "N", "O", "B", "L", "C", "K", "J", "E", "G", "M", "I", "D", "H"],
"Hungarian_rate": [1, 4, 5, 8, 9, 10, 15, 15, 20, 22, 23, 31, 41, 60, 75],
"Population": [40, 10, 30, 50, 30, 20, 40, 30, 20, 20, 20, 10, 40, 50, 30]
}
df = pd.DataFrame(data)
Код: Выделить всё
df["interval"] = pd.qcut(df.Hun_rate, q=5)
grouped = df.groupby("interval").size().reset_index(name='num')

НО я намерен создать 5 интервалов на основе столбца «Доля венгров (%)» с намерением достичь одинакового общего количества населения в каждом интервале.
Ниже вы можете увидеть желаемый результат.

Я пытался найти решение для создания интервалов с помощью различных источников, таких как Stack Overflow и AI, но безуспешно. Не могли бы вы дать указания, как создавать интервалы на основе определенных критериев?
Подробнее здесь: https://stackoverflow.com/questions/784 ... ze-of-each