假设检验的鲁棒性
来源:互联网 发布:手机钉钉 请检查网络 编辑:程序博客网 时间:2024/06/01 17:04
Richard Wu
2016年3月3日
考虑一个问题,当一个随机变量不一定服从正态分布时,是不是还可以使用参数检验?
T检验
思路是,分两种情况原假设是正确的情况下p-value是否是我们想象的那样和显著性水平相符合。在原假设错误的情况下在相同的样本容量,相同的均值差的情况下两者的功效相差多少?
第一种情况:原假设是正确的
若随机变量X服从正态分布,抽取一个样本取其t检验的p值,看看p值小于显著性水平比如5%的样本个数是不是真的符合。
N <- 10000 #蒙特卡洛逼近的迭代次数n <- 10 #样本容量p <- vector()for( i in 1:N ){ x <- rnorm(n) #均值为0的正态分布 p <- append(p,t.test(x)$p.value)}sum(p <= .05) / N
## [1] 0.046
qqplot(p,seq(0,1,length.out = length(p)))abline(a=0,b=1,col='red')
从上面的结果看,如果样本是正态分布,那边当反复测试时p-value小于
N <- 10000 #蒙特卡洛逼近的迭代次数n <- 10 #样本容量p <- vector()for( i in 1:N ){ x <- runif(n,-1,1) p <- append(p,t.test(x)$p.value)}sum(p <= .05) / N
## [1] 0.0551
qqplot(p,seq(0,1,length.out = length(p)))abline(a=0,b=1,col='red')
library(e1071)kurtosis(rnorm(100))
## [1] 1.076053
kurtosis(runif(100))
## [1] -1.266117
kurtosis(rcauchy(100))
## [1] 54.45368
数据更集中的均匀分布上,t检验略有错误
N <- 10000 #蒙特卡洛逼近的迭代次数n <- 100 #样本容量p <- vector()for( i in 1:N ){ x <- runif(n,-1,1) p <- append(p,t.test(x)$p.value)}sum(p <= .05) / N
## [1] 0.0491
qqplot(p,seq(0,1,length.out = length(p)))abline(a=0,b=1,col='red')
增加样本容量以后基本和正态分布保持一致了
N <- 10000 #蒙特卡洛逼近的迭代次数n <- 10 #样本容量p <- vector()for( i in 1:N ){ x <- rcauchy(n) p <- append(p,t.test(x)$p.value)}sum(p <= .05) / N
## [1] 0.0192
qqplot(p,seq(0,1,length.out = length(p)))abline(a=0,b=1,col='red')
离散程度更高的分布偏差就会很大,上图代表p-value比较小的时候,其在样本中的实际占比要小于p-value的值。所以当总体是柯西分布这类的离散度比较高的分布t检验效果就会差很多。
curve(dcauchy(x),-6,6,ylim = c(0,.4))curve(dnorm(x),add=T,col='red')legend(x=4,y=.4,legend = c('Cauthy','Normal'),col=1:2,lty = 1,cex = .6)
N <- 10000 #蒙特卡洛逼近的迭代次数n <- 10 #样本容量p <- vector()for( i in 1:N ){ x <- rcauchy(n) p <- append(p,wilcox.test(x)$p.value)}sum(p <= .05) / N
## [1] 0.0494
qqplot(p,seq(0,1,length.out = length(p)),main="Wilcox秩和检验")abline(a=0,b=1,col='red')
原假设错误
N <- 10000 #蒙特卡洛逼近的迭代次数n <- 10 #样本容量p <- vector()for( i in 1:N ){ x <- rnorm(n,1) p <- append(p,t.test(x)$p.value)}sum(p <= .05) / N
## [1] 0.7997
qqplot(p,seq(0,1,length.out = length(p)))abline(a=0,b=1,col='red')abline(h = .95 , lty=2)
0 0
- 假设检验的鲁棒性
- 假设检验
- 假设检验
- 假设检验
- 假设检验
- 假设检验
- 假设检验
- 假设检验
- 假设检验
- 假设检验
- 假设检验
- 假设检验
- 假设检验
- 假设检验
- 假设检验
- 假设检验
- 假设检验
- 假设检验
- 拓扑排序
- Oracle 中文转为拼音
- pdf去除水印方法!【亲测可用】
- 使用UIAlertController 报错 警告 遇到的问题
- 《iOS Human Interface Guidelines》——Toolbar Bar
- 假设检验的鲁棒性
- Linux / Unix Command: filter
- Linux-安装jdk
- android避免service被杀
- 使用 Python 编写虚拟机解释器
- Tomcat中JVM内存溢出及合理配置
- mongodb学习(一)
- liunx最小化安装记录
- 调用setResult()方法时没有回调onActivityForResult()方法