python - 获取熊猫数据框列中每个值的平均值
问题描述
我需要得到人力资源部门每个名字的平均工作年限。
我试过这个
work = df.loc[Employee['Department'] == 'HR', [{'Year' : 'mean'}],
['FirstName', 'LastName', 'Year','Department']].drop_duplicates()
结果会是这样。平均值是任意的 我没有计算出来
FirstName LastName aver_Year Department
0 Joe Faulk 3.00 HR
1 Bryce Benton 5.00 HR
2 Sarah Cronin 2.00 HR
3 Gabriel Montgomery 5.00 HR
4 Patricia Genty-Andrade 6.00 HR
源数据框
FirstName LastName Year Department
0 Joan Hamilton-Huber 2 HR
1 Nathan Brigmon 5 AustinCodeDepartment
2 Shawn Lincoln 8 HR
3 Chris Hernandez 2 AustinConventionCenter
4 John Montgomery 7 AustinEnergy
解决方案
我会使用熊猫的功能分组:
df_gb = df.groupby(['Department','FirstName','LastName'])['Year'].mean().reset_index()
df_gb = df_gb[df_gb['Department']=='HR']
第一行给出了你想要的输出,按部门和名称的平均年数。然后您按人力资源部门过滤,并在 df_gb 数据帧上获得所需的数据。
推荐阅读
- javascript - 我们如何从客户端设置然后重置 Telerik TextBox 的 MaxLength 属性?
- c++ - 罗马数字到阿拉伯语 C++
- node.js - 如何将 JSON 转换为 CSV,然后作为 CSV 文件保存到计算机
- c# - 在 C# 中排队异步任务
- volttron - 应用“RPC.allow”时如何调用函数?
- java - 如何完成三个Queue实现以及三个Stack实现?
- php - WordPress 在 2 列中显示循环
- scala - Spark sql优化技术将csv加载到hive的orc格式
- python - 无法覆盖自定义字段 __init__ 并进行迁移,抛出错误
- c++ - 了解此 printf 的结果