博客
关于我
pandas.groupby().rank()用法详解
阅读量:345 次
发布时间:2019-03-04

本文共 1111 字,大约阅读时间需要 3 分钟。

Pandas.DataFrame.groupby()是数据处理中的一个强大工具,用于根据特定条件对数据进行分组和聚合操作。它支持通过映射器、函数或特定列来实现分组,可应用于大规模数据的高效处理。

Parameters

groupby()函数接受多个参数以控制分组方式:

  • by:可以是映射器、函数、标签或标签列表,用于确定分组依据。
    • 若是函数,会对每个索引值调用该函数。
    • 若是dict、Series或数组,会根据其值或标签来分组。
    • 若是标签或标签列表,可直接根据DataFrame的列来分组。
  • axis:决定沿行(0)或列(1)进行分组,默认为0。
  • level:对于多层索引的情况,可指定要分组的层级,默认为None。
  • as_index:布尔值,默认为True,分组结果中保留分组标签。
  • sort:布尔值,默认True,排序分组结果。
  • group_keys:布尔值,默认True,apply时保留分组标签。
  • squeeze:布尔值,默认True,压缩结果维度以保持一致性。
  • observed:布尔值,默认False,只显示分类变量的观测值。
  • dropna:布尔值,默认True,处理缺失值时是否删除分组键。

Returns

groupby对象包含分组信息,可用于后续聚合操作。


Pandas.DataFrame.rank()用于对数据框沿指定轴进行排名。默认方法是按平均值排名,适用于处理重复值时的排名规则。

Parameters

rank()函数接受以下参数:

  • method:{‘average’, ‘min’, ‘max’, ‘first’, ‘dense’},默认‘average’,决定相同值的排名方法。
    • average:取相同值的平均排名。
    • min:取相同值中最低的排名。
    • max:取相同值中最高的排名。
    • first:按原数据顺序依次分配排名。
    • dense:与‘min’类似,但排名连续递增。
  • numeric_only:筛选出仅包含数值列的数据,默认None。
  • na_option:默认‘keep’,处理缺失值时的行为。
  • ascending:布尔值,默认True,决定排序方向。
  • pct:布尔值,默认False,返回百分比排名。

Methods

method参数决定了相同值的排名方式,例如:

  • average:计算相同值的平均排名。
  • min:返回相同值中最低的排名。
  • max:返回相同值中最高的排名。
  • first:按照原数据中出现的顺序依次分配排名。
  • dense:确保排名连续递增,即使中间缺失值也不会跳跃。

References

本文内容基于Pandas官方文档,具体参数和功能细节请参考官方资料以获取最新信息。

转载地址:http://zdge.baihongyu.com/

你可能感兴趣的文章
Python中正则表达式的巧妙使用
查看>>
Python中浮点数的二进制表示(位不是十六进制)
查看>>
Python中特殊函数和表达式 filter,map,reduce,lambda
查看>>
python中用socket检测端口_Python 用socket模块实现检测端口和检测web服务
查看>>
python中用于列表操作的plus和append有什么区别?
查看>>
python中用递归求和
查看>>
python中的@staticmethod
查看>>
python中的array函数作用_NumPy 数组使用大全
查看>>
python中的isinstance判断多个对象类型
查看>>
python中的keys、values、items
查看>>
Python中的lambda和apply结合使用
查看>>
python中的map函数
查看>>
Python中的numpy模块解析
查看>>
Python中的pickle
查看>>
Python中的signal模块和Ctrl+C操作
查看>>
python中的sort方法
查看>>
Python中的threading
查看>>
python中的urlencode和urldecode
查看>>
python中的with学习
查看>>
python中的write和read的用法,有无换行符
查看>>