df = pd.DataFrame({"name" : ["Джо", "Генри", "Сэм", "Макс", "Джанет", "Рэнди" ", "Воля"], "зарплата" : [85000, 80000, 60000, 90000, 69000, 85000, 70000], "departmentId" : [1, 2, 2, 1, 1, 1, 1]})
Код: Выделить всё
name salary departmentId
0 Joe 85000 1
1 Henry 80000 2
2 Sam 60000 2
3 Max 90000 1
4 Janet 69000 1
5 Randy 85000 1
6 Will 70000 1
Код: Выделить всё
departmentId name salary
1 Max 90000
1 Joe 85000
1 Randy 85000
2 Henry 80000
2 Sam 60000
- Я не уверен, как группировать по отделам и агрегировать зарплату, сохраняя при этом соответствующие имена сотрудников в каждой строке (см. желаемый результат выше). Есть ли способ сделать это?
- При группировке по идентификатору отдела и агрегировании по зарплате я получаю серию MultiIndex с внутренним уровнем, который, кажется, соответствует исходному индексу каждой строки в дф. Почему возвращается серия MultiIndex и что случилось со столбцом сотрудников, который я исключил из операции группировки?

- Если я также передам as_index = Ложь для приведенного выше вызова groupby, я получаю следующую ошибку: «Длина значений (2) не соответствует длине индекса (5)». Почему это происходит?
Подробнее здесь: https://stackoverflow.com/questions/793 ... as-groupby