本文簡要介紹 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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。