Я изучаю pandas и у меня есть вопрос об агрегатных функциях. Приносим свои извинения за очень простой c вопрос для экспертов на этом форуме :).
Вот образец моего набора данных:
EmpID Age_Range Salary
0 321 20, 35 34000
1 561 20, 35 24000
2 789 50, 65 34000
вышеупомянутый набор данных - df, и я экономлю среднее значение. Информация о зарплате для возрастного диапазона сотрудников в отдельном фрейме данных (df_age), где я сохраняю приведенные выше данные. Мне удалось успешно применить mean () к таблице заработной платы, чтобы получить среднее значение. зарплата по возрастному диапазону.
Итак, в основном то, что я хочу, - это количество сотрудников для каждого age_range. df_age['EmpCount'] = df.groupby('Age_Range')['EmpID'].count()
не работает и возвращает «NaN» в моем наборе данных.
дополнительно, когда я использовал функцию преобразования
df_age['EmpCount'] = df.groupby('Age_Range')['EmpID'].transform(count)
, она возвращает значения, но то же значение три возрастных диапазона - 37 лет, что неверно. Всего в моем наборе данных 100 записей.
желаемый результат для df_age:
0 (20, 35] 50000 27
1 (35, 50] 37000 11
2 (50, 65] 65000 30
Спасибо!