R语言使用蒙特卡洛模拟进行正态性检验及可视化

简介: R语言使用蒙特卡洛模拟进行正态性检验及可视化

如何使用蒙特卡洛模拟来推导随机变量可能的分布,我们回到统计数据(无协变量)进行说明。我们假设观察值是基础随机变量,具有未知分布的随机变量。

这里有两种策略。在经典统计中,我们使用概率定理来推导随机变量的属性在可能的情况下的分布。另一种方法是进行计算统计。

对于评估拟合度,测试正态性不是很有用。在本文中,我想说明这一点。我们使用男生的身高数据,


X=Davis$height[Davis$sex=="M"]

我们可以可视化其分布(密度和累积分布)



u=seq(155,205,by=.5)
par(mfrow=c(1,2))
hist(X,col=rgb(0,0,1,.3))
lines(density(X),col="blue",lwd=2)
lines(u,dnorm(u,178,6.5),col="black")
Xs=sort(X)
n=length(X)
p=(1:n)/(n+1)
plot(Xs,p,type="s",col="blue")
lines(u,pnorm(u,178,6.5),col="black")

 

它看起来像正态分布,因此我们可以在左侧添加密度高斯分布,在右侧添加cdf。我不想测试它是否是高斯分布。为了查看此分布是否相关,可以使用蒙特卡洛模拟法

 

我们可以在左侧看到很难通过密度(直方图以及核密度密度估计器)评估正态性  。人们很难想到两个密度之间的有效距离。但是,如果我们看一下右边的图,我们可以比较经验分布累积分布。如上所述,我们可以按照Cramer-von Mises  检验或  Kolmogorov-Smirnov  距离的建议计算黄色区域  。

 

 

如果我们抽取10,000个反事实样本,则可以使用测试统计量等的方法来可视化距离的分布(此处为密度),并将其与样本的观察值进行比较。测试统计量超过观察值的样本比例



mean(dks)
[1] 0.78248
计算版本的值

在统计数据中,要么操作抽象对象(如随机变量),要么实际上使用一些代码生成假样本以量化不确定性。后者很有趣,因为它有助于可视化复杂的量化。

相关文章
|
机器学习/深度学习 算法 大数据
机器学习:Friedman检验与Nemenyi后续检验,Python实现
机器学习:Friedman检验与Nemenyi后续检验,Python实现
787 0
机器学习:Friedman检验与Nemenyi后续检验,Python实现
|
6天前
|
存储 算法 数据可视化
R语言用隐马尔可夫Profile HMM模型进行生物序列分析和模拟可视化
R语言用隐马尔可夫Profile HMM模型进行生物序列分析和模拟可视化
22 11
|
7天前
|
机器学习/深度学习 数据可视化
数据分享|R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化
数据分享|R语言逻辑回归Logisitc逐步回归训练与验证样本估计分析心脏病数据参数可视化
39 18
|
7天前
|
机器学习/深度学习 算法 数据挖掘
数据分享|PYTHON用PYSTAN贝叶斯IRT模型拟合RASCH模型分析学生考试问题数据
数据分享|PYTHON用PYSTAN贝叶斯IRT模型拟合RASCH模型分析学生考试问题数据
20 3
|
13天前
|
数据挖掘
R语言拟合扩展Rasch模型分析试题质量
R语言拟合扩展Rasch模型分析试题质量
22 0
|
13天前
|
资源调度 数据可视化 算法
R语言贝叶斯MCMC:用rstan建立线性回归模型分析汽车数据和可视化诊断
R语言贝叶斯MCMC:用rstan建立线性回归模型分析汽车数据和可视化诊断
18 0
|
13天前
|
运维 算法 C++
R语言时间序列分解和异常检测方法应用案例
R语言时间序列分解和异常检测方法应用案例
22 0
|
13天前
|
存储 资源调度 数据可视化
R语言STAN贝叶斯线性回归模型分析气候变化影响北半球海冰范围和可视化检查模型收敛性
R语言STAN贝叶斯线性回归模型分析气候变化影响北半球海冰范围和可视化检查模型收敛性
33 7
|
14天前
|
存储 数据采集 数据可视化
R语言估计时变VAR模型时间序列的实证研究分析案例
R语言估计时变VAR模型时间序列的实证研究分析案例
14 1
R语言估计时变VAR模型时间序列的实证研究分析案例
|
14天前
R语言t检验和非正态性的鲁棒性
R语言t检验和非正态性的鲁棒性
16 4

热门文章

最新文章