python - 计算最高分数 - Pandas 中每个供应商的最低分数
问题描述
我想计算最大分数 - 熊猫数据框中项目的最小分数
当前 df 看起来像这样:
projectID supplierID score
1 1 50
1 2 60
1 3 75
我希望它看起来像这样:
max-min => 75-50 = 25
projectID supplierID score max-min
1 1 50 25
1 2 60 25
1 3 75 25
我想为每个 projectID 执行此操作
解决方案
使用np.ptp
(“峰到峰”):
df['max-min']=df.groupby('projectID').score.transform(np.ptp)
#df.groupby('projectID').score.transform(np.ptp)
Out[229]:
0 25
1 25
2 25
Name: score, dtype: int64
推荐阅读
- laravel - 使用原始 SQL 查询插入以避免 SQL 注入?
- r - 检查差异是否小于机器精度的正确/标准方法是什么?
- c - 存储和打印结构数组无法按预期工作
- r - How to get rid of INCOMPLETE STRING error in ShinyApp R?
- java - 在Java中的排序矩阵中搜索
- powershell - 如何为每个 npm 脚本打开多个拆分终端?
- python - Kapitza 振荡器动画太慢且不稳定
- gnuplot - Gnuplot - 设置一个函数
- python - 有没有办法可以配对一个以后可以自行删除的数组的内容?(秘密圣诞老人计划)
- python-3.x - 在不同变量中分配 While 循环的值的问题