本文简要介绍 python 语言中 scipy.stats.rankdata
的用法。
用法:
scipy.stats.rankdata(a, method='average', *, axis=None, nan_policy='propagate')#
为数据分配等级,适当地处理关系。
默认情况下(
axis=None
),数据数组首先被展平,然后返回一个平面数组。如果需要,单独将秩数组重塑为数据数组的形状(参见示例)。排名从 1 开始。方法参数控制如何将等级分配给相等的值。看[1]进一步讨论排名方法。
- a: array_like
要排名的值数组。
- method: {‘average’, ‘min’, ‘max’, ‘dense’, ‘ordinal’},可选
用于为绑定元素分配等级的方法。可以使用以下方法(默认为‘average’):
‘average’: The average of the ranks that would have been assigned to all the tied values is assigned to each value.
‘min’: The minimum of the ranks that would have been assigned to all the tied values is assigned to each value. (This is also referred to as “competition” ranking.)
‘max’: The maximum of the ranks that would have been assigned to all the tied values is assigned to each value.
‘dense’: Like ‘min’, but the rank of the next highest element is assigned the rank immediately after those assigned to the tied elements.
‘ordinal’: All values are given a distinct rank, corresponding to the order that the values occur in a.
- axis: {无,整数},可选
执行排名的轴。如果
None
,数据数组首先被展平。- nan_policy: {‘propagate’, ‘omit’, ‘raise’},可选
定义当输入包含 nan 时如何处理。以下选项可用(默认为‘propagate’):
‘propagate’: propagates nans through the rank calculation
‘omit’: performs the calculations ignoring nan values
‘raise’: raises an error
注意
当 nan_policy 为 ‘propagate’ 时,输出是所有 nan 的数组,因为相对于输入中 nan 的排名未定义。当nan_policy为‘omit’时,对其他值进行排序时忽略a中的nan,输出的对应位置为nan。
- ranks: ndarray
一个大小等于 a 大小的数组,包含排名分数。
参数 ::
返回 ::
参考:
[1]“Ranking”、https://en.wikipedia.org/wiki/Ranking
例子:
>>> import numpy as np >>> from scipy.stats import rankdata >>> rankdata([0, 2, 3, 2]) array([ 1. , 2.5, 4. , 2.5]) >>> rankdata([0, 2, 3, 2], method='min') array([ 1, 2, 4, 2]) >>> rankdata([0, 2, 3, 2], method='max') array([ 1, 3, 4, 3]) >>> rankdata([0, 2, 3, 2], method='dense') array([ 1, 2, 3, 2]) >>> rankdata([0, 2, 3, 2], method='ordinal') array([ 1, 2, 4, 3]) >>> rankdata([[0, 2], [3, 2]]).reshape(2,2) array([[1. , 2.5], [4. , 2.5]]) >>> rankdata([[0, 2, 2], [3, 2, 5]], axis=1) array([[1. , 2.5, 2.5], [2. , 1. , 3. ]]) >>> rankdata([0, 2, 3, np.nan, -2, np.nan], nan_policy="propagate") array([nan, nan, nan, nan, nan, nan]) >>> rankdata([0, 2, 3, np.nan, -2, np.nan], nan_policy="omit") array([ 2., 3., 4., nan, 1., nan])
相关用法
- Python SciPy stats.ranksums用法及代码示例
- Python SciPy stats.random_table用法及代码示例
- Python SciPy stats.random_correlation用法及代码示例
- Python SciPy stats.randint用法及代码示例
- Python SciPy stats.rayleigh用法及代码示例
- Python SciPy stats.rv_histogram用法及代码示例
- Python SciPy stats.recipinvgauss用法及代码示例
- Python SciPy stats.rvs_ratio_uniforms用法及代码示例
- Python SciPy stats.rel_breitwigner用法及代码示例
- Python SciPy stats.rice用法及代码示例
- Python SciPy stats.relfreq用法及代码示例
- Python SciPy stats.rv_discrete用法及代码示例
- Python SciPy stats.rv_continuous用法及代码示例
- Python SciPy stats.rdist用法及代码示例
- Python SciPy stats.anderson用法及代码示例
- Python SciPy stats.iqr用法及代码示例
- Python SciPy stats.genpareto用法及代码示例
- Python SciPy stats.skewnorm用法及代码示例
- Python SciPy stats.cosine用法及代码示例
- Python SciPy stats.norminvgauss用法及代码示例
- Python SciPy stats.directional_stats用法及代码示例
- Python SciPy stats.invwishart用法及代码示例
- Python SciPy stats.bartlett用法及代码示例
- Python SciPy stats.levy_stable用法及代码示例
- Python SciPy stats.page_trend_test用法及代码示例
注:本文由纯净天空筛选整理自scipy.org大神的英文原创作品 scipy.stats.rankdata。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。