pandas.DataFrame.rank

pandas.DataFrame.rank 官方文档

DataFrame.rank(axis=0, method=‘average’, numeric_only=NoDefault.no_default, na_option=‘keep’, ascending=True, pct=False)

参数解释

  • axis: axis=0为按行排名,axis=1为按列排名
  • method: 如何对具有相同价值(即领带)的记录组进行排序:
  • numeric_only: 对于DataFrame对象,如果设置为True,则只对数字列排序。
  • na_option: 如何对NaN值进行排序:
  • ascending: 元素按升序/降序排列
  • pct: 是否以百分比形式显示返回的排名。

Example

df = pd.DataFrame(data={'Animal': ['cat', 'penguin', 'dog','spider', 'snake'],'Number_legs': [4, 2, 4, 8, np.nan]})

method: {‘average’, ‘min’, ‘max’, ‘first’, ‘dense’}, default ‘average’

  • average: 组里的平均排名
  • min: 组里的最低排名
  • max: 组里的最高排名
  • first: 按照他们在数组中出现的顺序排列
  • dense: 就像’ min '一样,但是在组之间rank总是增加1。
df['method_average'] = df['Number_legs'].rank(method='average')
df['method_min'] = df['Number_legs'].rank(method='min')
df['method_max'] = df['Number_legs'].rank(method='max')
df['method_first'] = df['Number_legs'].rank(method='first')
df['method_dense'] = df['Number_legs'].rank(method='dense')

na_option: {‘keep’, ‘top’, ‘bottom’}, default ‘keep’

  • keep: 空值排序仍为空值
  • top: 排序放在第一位
  • bottom: 排在最后一位
df['na_keep'] = df['Number_legs'].rank(na_option='keep')
df['na_top'] = df['Number_legs'].rank(na_option='top')
df['na_bottom'] = df['Number_legs'].rank(na_option='bottom')

ascending: 升序为True, 降序为False

df['asc_True'] = df['Number_legs'].rank(method='min', ascending=True)
df['asc_False'] = df['Number_legs'].rank(method='min', ascending=False)

pct: 是否显示百分比

df['pct_True'] = df['Number_legs'].rank(method='min', pct=True)
df['pct_False'] = df['Number_legs'].rank(method='min', pct=False)

分组排序

pandas.core.groupby.GroupBy.rank 官方文档

Example

df = pd.DataFrame({"group": ["a", "a", "a", "a", "a", "b", "b", "b", "b", "b"],"value": [2, 4, 2, 3, 5, 1, 2, 4, 1, 5],}
)

for method in ['average', 'min', 'max', 'dense', 'first']:df[f'{method}_rank'] = df.groupby('group')['value'].rank(method)

dataframe排序 pd.rank()相关推荐

  1. python pandas DataFrame 排序

    python pandas DataFrame 排序 import pandas as pd import numpy as np df1 = pd.DataFrame({'日期': ['2021-7 ...

  2. Python数据分析扩展库pandas的DataFrame排序方法小结

    >>> import numpy as np >>> import pandas as pd # 创建DataFrame >>> df = pd. ...

  3. Oracle-分析函数之排序值rank()和dense_rank()

    概述 ORACLE函数系列: Oracle常见函数大全 Oracle-分析函数之连续求和sum(-) over(-) Oracle-分析函数之排序值rank()和dense_rank() Oracle ...

  4. R语言使用dplyr包的arrange函数进行dataframe排序、arrange函数基于一个字段(变量)进行降序排序实战

    R语言使用dplyr包的arrange函数进行dataframe排序.arrange函数基于一个字段(变量)进行降序排序实战 目录

  5. python dataframe排序_python – Pandas DataFrame排序忽略了这种情况

    我在 Python中有一个Pandas数据帧.数据帧的内容来自 here.我稍微修改了"单个"列中第一个字母的大小写.这是我有的: import pandas as pd df = ...

  6. dataframe 排序_如何对Pandas DataFrame进行自定义排序

    作者|B. Chen 编译|VK 来源|Towards Data Science Pandas DataFrame有一个内置方法sort_values(),可以根据给定的变量对值进行排序.该方法本身使 ...

  7. python pandas dataframe 排序,如何按两列或更多列对python pandas中的dataFrame进行排序?...

    Suppose I have a dataframe with columns a, b and c, I want to sort the dataframe by column b in asce ...

  8. dataframe 排序_疯狂Spark之DataFrame创建方式详解一(九)

    创建DataFrame的几种方式 1.读取json格式的文件创建DataFrame 注意: 1. json文件中的json数据不能嵌套json格式数据. 2. DataFrame是一个一个Row类型的 ...

  9. DataFrame 排序

    按值排序 DataFrame.sort_values(by, axis=0, ascending=True, inplace=False, kind='quicksort', na_position= ...

最新文章

  1. 【转】 [C/OC的那点事儿]NSMutableArray排序的三种实现(依赖学生成绩管理系统).
  2. 黑马28期Android全套视频无加密完整版
  3. SNMP、MIB、OID概念的理解
  4. Mysql:增加用户和密码,赋予权限
  5. SSM中使用Mybatis的PageHelper插件实现分页
  6. node 原生实现服务端 websocket
  7. 使用OnCtlColor函数消息打造背景
  8. QCOW2/RAW/qemu-img 概念浅析
  9. 第一百一十三期:去伪存真,区块链应用到底能解决什么实际问题?
  10. 技术人如何提升自己的核心竞争力
  11. 【深度学习】简单理解Batch Normalization批标准化
  12. http respose status code (记)
  13. java logging 格式化_Spring源码使用java.util.logging打印日志
  14. 使用next.js完成从开发到部署
  15. 史上最污技术解读,让你秒懂IT术语
  16. 简易版的等待/唤醒方法(sleep,wait,await,park区别)适合面试回答
  17. idea插件开发教程
  18. mysql5.7卸载教程_MySQL 5.7.19 简易安装、卸载教程
  19. The end tag “</c:forEach“ is unbalanced
  20. 天玑9000和骁龙888plus哪个好

热门文章

  1. CentOS7 防火墙开放端口配置
  2. 直播预告 | 双十一电商风控怎么破,看这场直播就对了!
  3. Python海龟绘图入门篇
  4. Python | peewee.InterfaceError
  5. 大数据应用技术实验报告六 Hive和MySQL
  6. php泛目录站群系统,php泛目录站群
  7. 假定系统四个进程,p1、p2、p3、p4三种资源r1、r2、r3数量分别为9、3、6在T0时刻资源分配为下表:
  8. echarts学习笔记1
  9. 美团配送和亚马逊AWS的异曲同工
  10. 2019 年 (C题) 线路负载及故障检测装置