scipy.stats.
scoreatpercentile#
- scipy.stats.scoreatpercentile(a, per, limit=(), interpolation_method='fraction', axis=None)[source]#
计算输入序列某一指定百分位数处的分数。
例如,百分位数 per=50 处的分数就是中位数。如果所需分位数介于两个数据点之间,则会根据 interpolation 的值在两者之间插值。如果提供了参数 limit,它应当是两个值的元组 (lower, upper)。
- 参数:
- aarray_like
从中提取分数的一维值数组。
- perarray_like
要从中提取分数的分位数。值范围应为 [0,100]。
- limittuple, optional
包含两个标量的元组,是用来计算百分位数的上下限。此 (闭合) 区间外的 a 的值将被忽略。
- interpolation_method{‘fraction’, ‘lower’, ‘higher’}, optional
指定插值方法以使用,当所需的 quantile 介于两个数据点 i 和 j 时,下列选项可用(默认是 'fraction')
'fraction':
i + (j - i) * fraction
其中fraction
是由i
和j
围绕的索引的小数部分'lower':
i
'higher':
j
- axisint,可选
计算百分位数的轴。默认值是 None。如果是 None,则在整个数组 a 上进行计算。
- 返回:
- score浮点数或 ndarray
在百分位上的分数。
注释
此函数将在未来废弃。对于 NumPy 1.9 及更高版本,
numpy.percentile
提供了scoreatpercentile
提供的所有功能。它快得多。因此建议对于 numpy >= 1.9 的用户使用numpy.percentile
。示例
>>> import numpy as np >>> from scipy import stats >>> a = np.arange(100) >>> stats.scoreatpercentile(a, 50) 49.5