#python #pandas
#python #pandas
Вопрос:
Geography Age group 2016
0 Toronto All 1525
1 Toronto 1~7 5
2 Toronto 7~20 7
3 Toronto 20~40 500
4 Vancouver All 3000
5 Vancouver 1~7 10
6 Vancouver 7~20 565
7 Vancouver 20~40 564
.
.
.
ПРИМЕЧАНИЕ: Это всего лишь пример. мой фрейм данных содержит разные числа
Я хочу создать мультииндекс, где первый индекс по географии, а второй — по возрастной группе.
Также возможно ли groupby без выполнения каких-либо функций в конце?
Вывод должен быть:
Geography Age group 2016
0 Toronto All 1525
1 1~7 5
2 7~20 7
3 20~40 500
4 Vancouver All 3000
5 1~7 10
6 7~20 565
7 20~40 564
.
.
Ответ №1:
Для того, чтобы создать MultiIndex
как указано, вы можете просто использовать DataFrame.set_index()
:
df.set_index(['Geography','Agegroup' ])
2016
Geography Age group
Toronto All 1525
1~7 5
7~20 7
20~40 500
Vancouver All 3000
1~7 10
7~20 565
20~40 564
Комментарии:
1. Идеально! Спасибо.
2. Но возможно ли это сделать с помощью groupby?
3. Если вы хотите создать фрейм данных с несколькими индексами, это правильный способ. Groupbys предназначены для применения некоторой функции агрегирования по группам