У меня есть кадр данных в следующем виде:
d1 = {'City_ID': ['City_1','City_1','City_1','City_1','City_2','City_3','City_3','City_3','City_3','City_3'],
'Indiv_ID': ['Indiv_1','Indiv_2','Indiv_3','Indiv_4','Indiv_5','Indiv_6','Indiv_7','Indiv_8','Indiv_9','Indiv_10'],
'Expenditure_by_earning': [0.11, 0.66, 0.51, 0.43, 0.46,0.8, 0.14, 0.06, 0.64, 0.95]}
Реальный набор данных содержит более 1000 городов с несколькими людьми, хотя в некоторых городах есть только одно наблюдение. Я хотел бы получить людей в каждом городе, чьи расходы по стоимости заработка меньше 25% процентиля и больше 75% процентиля для этого города.
Результат в этом случае я ожидаю:
City_ID Indiv_ID Expenditure_by_earning Percentile
City_1 Indiv_1 0.11 25
City_1 Indiv_2 0.66 75
City_3 Indiv_7 0.06 25
City_3 Indiv_8 0.14 25
City_3 Indiv_6 0.8 75
City_3 Indiv_10 0.95 75
Примечание: Город 2 уничтожается.
Кто-нибудь поможет мне в том, как добиться этого с помощью python? Спасибо.