python - 如何用 Python 计算 Rankits?
问题描述
如何使用 Python 计算 Rankits?
https://en.wikipedia.org/wiki/Rankit
特别是我想重现维基百科上的例子:所以我搜索了一个函数,它接受一个列表[16, 22, 40, 43, 65, 75]
,然后返回相应的排名:[−1.2672, −0.6418, −0.2016, 0.2016, 0.6418, 1.2672]
解决方案
observation = [16, 22, 40, 43, 65, 75]
import numpy as np
import scipy.stats
def Q_Q_Prob(data):
n = len(data)
prob_level = []
for i in range(1,n+1):
prob_level.append(np.round((i-0.5)/n,5))
Standard_normal_quantiles = scipy.stats.norm.ppf(prob_level)
return Standard_normal_quantiles
print(Q_Q_Prob(observation))
这给出了书名中示例的准确结果:Applied Multivariate Statistical Analysis (RICHARD A. JOHNSON) ,但没有给出上述示例的准确值。分享这个,因为这可能会给你一个想法。
推荐阅读
- python - 在Python中按特定顺序对x轴进行分组条形图排序
- c# - 用于 Unity 对话系统目的的 XML 解析具有属性的嵌套对象
- couchbase - 我如何以最佳方式执行此 N1QL SELECT 查询?
- wordpress - Wordpress 插件服务页面
- kotlin - 从 Intellij 运行时,Micronaut Kotlin 测试不起作用
- google-app-engine - 应用引擎或计算引擎 - 我可以同时使用 SSL
- python - 使用异步信号量进行数据库会话
- java - 找出哪个类/实例持有对打开文件的引用
- django - formset_factory 是否继承了它扩展的表单的清理/验证方法?
- javascript - 如果我已经保存了更改,我应该如何在返回时避免未保存更改的“警报”?