ITPub博客

首页 > 大数据 > 数据挖掘 > R语言使用蒙特卡洛模拟进行正态性检验及可视化

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

原创 数据挖掘 作者:tecdat 时间:2020-08-21 17:11:30 0 删除 编辑

原文链接:  

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

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

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

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。我不想测试它是否是高斯分布。为了查看此分布是否相关,可以使用蒙特卡洛模拟法

 

 

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

 

 

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

mean(dks)[1] 0.78248

计算版本的值

ks.test(X,"pnorm",178,6.5)	One-sample Kolmogorov-Smirnov testdata:  XD = 0.068182, p-value = 0.8079alternative hypothesis: two-sided

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

 


参考文献

1.

2.

3.

5.

6.

7.

8.

9.


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/69982319/viewspace-2713738/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
拓端tecdat分享最in的大数据资讯,提供“一站式”的数据分析学习和咨询体验,让我们一起做有态度的数据人。关注公众号:拓端数据部落、拓端数据。

注册时间:2020-08-21

  • 博文量
    87
  • 访问量
    38573