python - QQ地块分布检查
问题描述
我想通过使用 qq 图检查分布是否对数正态。因此,为了方便起见,我正在stats
使用 dist 函数创建一个对数正态分布并在 probplot 中检查它。但我仍然没有在 45 度线上得到我的点,即显示我的 z 的 qq 图不是对数正态的。为什么?我是新来的,任何帮助将不胜感激。这是我的代码
z=stats.lognorm.rvs(2.5,size=500)
stats.probplot(z,dist=stats.lognorm, sparams=(2.5,),plot=pylab)
pylab.show()
这是我的结果:输出
解决方案
这似乎是对数正态分布的指数性质的统计伪影。请注意绘图最右侧的点之间的巨大间隙。有趣的是,即使样本量很大,它似乎也不是一个很好的视觉拟合。
但是如果你先取对数,你会看到随机采样的点确实是正态分布的(在对数尺度上)。
from scipy import stats
import pylab
import numpy as np
z=np.log(stats.lognorm.rvs(2.5,size=500))
stats.probplot(z,dist=stats.norm, sparams=(0,2.5),plot=pylab)
pylab.show()
因此,以编程方式,您的 SciPy 代码似乎工作正常。出于数学原因,最好在https://stats.stackexchange.com/上询问
推荐阅读
- highcharts - 如何在 highcharts 中实现这种类型的标记?
- javascript - 阵列没有看到新的更新
- pandas - 函数在同一数据帧上多次运行时出错
- javascript - Expo React Native App中的隐藏状态栏留下空白
- python-3.x - 使用 Sagemaker 生命周期配置文件安装多个包
- apigee - Apigee 在将请求转发到目标之前删除 URL 字符串
- linux - 部署地理服务器 WAR 后,Tomcat 未在浏览器上加载 - Ubuntu
- opc - 如何在 node-opcua 服务器中获取连接的客户端和客户端证书
- android - 如何从 Firestore 分页适配器中删除项目?
- html - 仅使用 CSS 删除单选按钮文本