scipy.stats.
percentileofscore#
- scipy.stats.percentileofscore(a, score, kind='rank', nan_policy='propagate')[源代码]#
判定给定得分相对于一组得分的百分点排名。
例如,
percentileofscore
的 80% 意味着 a 中的 80% 得分低于给定的得分。对于间隙或平分的情况,具体定义取决于可选关键字 kind。- 参数:
- a类似于数组
与 score 比较的一维数组。
- score类似于数组
要计算其百分位的得分。
- kind{‘rank’, ‘weak’, ‘strict’, ‘mean’},可选
指定结果得分含义。可用的选项有(默认为 ‘rank’)
‘rank’:得分的平均百分比排名。对于多个匹配结果,将所有匹配得分的百分比排名取平均。
“弱”: 此种类对应于累积分布函数的定义。80% 的概率等级分表示 80% 的值均小于或等于所提供的分数。
“严格”: 类似于“弱”,但仅计算严格小于给定分数的值。
“平均值”: “弱”和“严格”分数的平均值,通常用于测试。参见 https://en.wikipedia.org/wiki/Percentile_rank
- nan_policy{‘传播’、‘抛出’、‘忽略’},可选
指定如何处理 nan 在 a 中的值。可用选项如下(默认为“传播”)
“传播”: 返回 nan(对于 score 中的每个值)。
“抛出”: 抛出错误
“忽略”: 该计算忽略 nan 值
- 返回:
- pcos浮点
相对于 a 的分数概率位置 (0-100)
示例
给定值的三分之四低于给定分数
>>> import numpy as np >>> from scipy import stats >>> stats.percentileofscore([1, 2, 3, 4], 3) 75.0
对于多个匹配项,请注意如何分别对两个匹配项 0.6 和 0.8 的分数进行平均
>>> stats.percentileofscore([1, 2, 3, 3, 4], 3) 70.0
只有 2/5 的值严格小于 3
>>> stats.percentileofscore([1, 2, 3, 3, 4], 3, kind='strict') 40.0
但有 4/5 的值小于或等于 3
>>> stats.percentileofscore([1, 2, 3, 3, 4], 3, kind='weak') 80.0
弱分数和严格分数之间的平均值是
>>> stats.percentileofscore([1, 2, 3, 3, 4], 3, kind='mean') 60.0
支持分数数组(任何维度的)
>>> stats.percentileofscore([1, 2, 3, 3, 4], [2, 3]) array([40., 70.])
输入可以是无穷大的
>>> stats.percentileofscore([-np.inf, 0, 1, np.inf], [1, 2, np.inf]) array([75., 75., 100.])
如果 a 为空,则得到的概率等级分均为 nan
>>> stats.percentileofscore([], [1, 2]) array([nan, nan])