python - 百分等级计算

标签 python statistics scipy percentile

我正在尝试计算 percentile rank使用 python statlib 的分数模块。 percentileofscore 函数应该返回 0 到 100 之间的值,但它通常会生成超出此范围的数字。一个例子:

 >> a = [0,1,2,3,4,5]
 >> percentileofscore(a, 0)
 108.33333333333333

我试过 scipy模块,我也推出了类似的结果。

我是不是误会了什么。这个功能?

编辑 - 更多示例:

 percentileofscore([23,23,23,25], 23)
 137.5
 percentileofscore([12,19,65,25], 12)
 112.5
 percentileofscore([112,109,605,25], 25)
 112.5

似乎查询最低分数的百分位数会导致问题。也许是一个错误?

最佳答案

scipy.stats.percentileofscore似乎按预期工作:

In [2]: import scipy.stats as stats

In [3]: stats.percentileofscore([0,1,2,3,4,5], 0)
Out[3]: 16.666666666666664

关于python - 百分等级计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8691573/

相关文章:

python - 如何在numpy中计算超过num_classes - 1 LDA方向?

python - 根据 JSON 中的字符串匹配创建新的 Pandas 列

javascript - 在 Javascript 中为按钮添加 ID

r - 如何根据另一列定义的组计算一列的排名?

machine-learning - 使用机器学习根据传感器数据进行故障预测

python - 矩阵线性组合的系数

python - 模块 'scipy.special' 在 Python/SciPy 中没有 'expit' 成员

python 不使用更新的 pip scipy 包

python - 编码 (unicode) 十六进制到八进制

python - 使用 argparse 将参数发送到 Python 脚本中的函数