我想让一列数据按照分组,用数据的大小标准化到百分比 ,最小值为0,最大值为1,发现如果直接用python自带的rank(pct=True)不会得到想要的结果

假设数据集如下(这是我搜索rank命令的时候得到的数据):

以下连接有对rank函数的详细介绍:

https://jishuin.proginn.com/p/763bfbd654b6

data = pd.DataFrame({'班级':['1班','1班','1班','1班','1班','2班','2班','2班','2班','2班'],'姓名':['韩愈','柳宗元','欧阳修','苏洵','苏轼','苏辙','曾巩','王安石','张三','小伍哥'],'成绩':[80,70,70,40,10,60,60,50,50,40]})
data['姓名'] = data['姓名'].str.rjust(3,'〇') 

如果使用rank函数,并且想要最低值为0,最高值为1,得到的结果如下

def group_rank(x,col):max = x.maxcount = x.count()[0]x['成绩排名'] = (x[col].rank(pct=True)-1/count)*count/(count-1)return x
check = data.groupby('班级').apply(group_rank,col='成绩')
check

这种rank的百分比,即使标准化到0-1之后,也不是我想要的结果,然后自己写函数:

def check(x,col):max = x[col].max()min = x[col].min()x['percentile'] = (x[col]-min)/(max-min)*100return x
data.groupby('班级').apply(check,col='成绩')

这才是想要的按照值的比例分配后得排名,所以有时候直接用函数可能得不到想要的结果。

Python分组百分比排名相关推荐

  1. python培训班靠谱吗-quot;quot;经常看到的python培训机构排名靠谱嘛?应该如何选择培训机构?...

    经常看到的python培训机构排名靠谱嘛?应该如何选择培训机构? 大多数所谓排名靠谱的 目前,还没有统一来评定 因此,大多数排名都是主观臆结果 还有一部分所谓的榜单是由培训机构自己写的 那它想怎么写就 ...

  2. python中国大学排名爬虫写明详细步骤-python中国大学排名爬虫

    python 中国大学排名爬虫 首先,给一个最好大学网URL:http://www.zuihaodaxue.cn/zuihaodaxuepaiming2016.html, 点击这里进入 . 功能描述 ...

  3. 窗口分析函数_11_生成百分比排名

    生成百分比排名 需求描述 需求:将EMP表里的部门编号为20的SAL字段按照由高到低排序后生成百分比排名. 解决方法:通过percent_rank OVER()来完成. 注: 数据库数据集SQL脚本详 ...

  4. 窗口分析函数_12_生成累计百分比排名

    生成累计百分比排名 需求描述 需求:将EMP表里的部门编号为20的SAL字段按照由高到低排序后生成累计百分比排名. 解决方法:通过cume_dist OVER()来完成. 注: 数据库数据集SQL脚本 ...

  5. python分组后对日期排序_python对分组进行排序

    python 分组排序问题请教 按照城市进行分组,然后按照数值进行排序.多谢各位 def top(self,n=5): return self.sort('num',ascending=True)[: ...

  6. 第一篇CSDN博客 python爬虫豆瓣排名前250的电影

    ## 第一篇CSDN博客 python爬虫豆瓣排名前250的电影 1.首先,这是本宝宝的第一篇博客,嘿嘿,有点小激动,之所以采用CSDN发博客呢有两个原因,1是因为现在学的东西比较多,自己学着学着就忘 ...

  7. 【excel】分组连续排名和不连续排名公式

    需求场景:对上面的数据进行排名计算,4种情况: ①不考虑commDate,单独对FoldPageNum进行排名,不连续排名: ②不考虑commDate,单独对FoldPageNum进行排名,连续排名: ...

  8. Oracle笔记 之 分组统计排名函数dense_rank/rank()-over()函数

    分组统计排名函数 解析 dense_rank/rank()-over()用于对数据进行统计排名. rank-over()函数对相同的统计值的排名相同,不同的统计值之间的排名不连续(相同统计值的排名均为 ...

  9. python 百分比数据_如何使用python计算数据列相对于另一列的百分比排名

    这是一个解决方案. 整理训练数据.然后对验证数据使用searchsorted.import pandas as pd import numpy as np # Generate Dummy Data ...

  10. 全国python培训机构排名

    Python爆红背后的原因是什么?为什么身边的小伙伴都开始学习Python?怎样零基础开始学习这门语言?学习难点在哪里?DT财经特邀纽约数据科学学院讲师张泽宇,为你们一一解答这些问题. ▍火爆的Pyt ...

最新文章

  1. 在typescript中导入第三方类库import报错
  2. oracle excel报表开发,深入浅出OracleEBS之Excel报表开发.doc
  3. java mysql 死锁,java-Spring JPA MySQL和死锁
  4. 视图解析器中配置前缀和后缀---SpringMVC学习笔记(五)
  5. LintCode 600. 包裹黑色像素点的最小矩形(BFS)
  6. msmq发送速度的测试
  7. MKNetwork网络请求过程中onCompletion调用两次的问题
  8. 如何启动Intel VT-X及合理利用搜索
  9. MAC安装向日葵软件步骤
  10. 【得物技术】AB实验设计实现与分流算法
  11. SPSS Modeler 数据整理之变量设定 (指南 第三章)
  12. php时间正序排序,列表的时间排序,应该正序还是倒序?
  13. ios 扫码枪外设 键盘模式_想把 iPad 当笔记本电脑用?可以试试这款外接键盘
  14. E+H悬浮物测量传感器CUS51D-AAD1A3
  15. STM32单片机点亮流水灯
  16. 单片机C51学习心得_02
  17. js网页繁体简体转换(备忘)
  18. 远程登陆windows设置分辨率
  19. Android截屏、录屏,适配AndroidQ以上
  20. 【开发管理】【直播系统】【macOS 应用开发】【面试问题】| Chat · 预告

热门文章

  1. java覆盖写入_java写入文件(覆盖和续写)
  2. 文件处理技巧,如何快速复制并覆盖已存在的文件
  3. python 删除文件夹中相似图片
  4. VC++通过MSXML6来操作xml需要注意的内存泄漏问题
  5. Windows server 2012 R2 服务器强制删除文件夹
  6. adsl modem的内置命令(viking)
  7. B站视频缓存 音频和视频批量合并
  8. 快速搭建一个直播Demo
  9. 【Apollo】【driver】【gnss】适配新的gps设备的方式与经验总结
  10. 【STC15系列】STC15软串口输出打印示例程序