R语言学习系列25KS分布检验与正态性检验Word下载.docx
《R语言学习系列25KS分布检验与正态性检验Word下载.docx》由会员分享,可在线阅读,更多相关《R语言学习系列25KS分布检验与正态性检验Word下载.docx(9页珍藏版)》请在冰豆网上搜索。
![R语言学习系列25KS分布检验与正态性检验Word下载.docx](https://file1.bdocx.com/fileroot1/2022-11/21/e05f59c7-64a0-40f9-858b-c1b4baad2b82/e05f59c7-64a0-40f9-858b-c1b4baad2b821.gif)
μ≠μ0;
Ⅱ。
根据样本数据计算出统计量t的观察值t0;
Ⅲ.P值=P{|t|≥|t0|}=t0的双侧尾部的面积;
Ⅳ.若P值≤α(在双尾部分),则在显著水平α下拒绝H0;
若P值〉α,则在显著水平α下接受H0;
注意:
α为临界值,看P值在不在阴影部分(拒绝域),空白部分为接受域。
2.左侧检验
I。
原假设H0:
μ≥μ0,备择假设H1:
μ<
μ0;
根据样本数据计算出统计量t的观察值t0(〈0);
Ⅲ.P值=P{t≤t0}=t0的左侧尾部的面积;
Ⅳ.若P值≤α(在左尾部分),则在显著水平α下拒绝H0;
若P值>
α,则在显著水平α下接受H0;
3.右侧检验
μ≤μ0,备择假设H1:
μ>
根据样本数据计算出统计量t的观察值t0(〉0);
Ⅲ.P值=P{t≥t0}=t0的右侧尾部的面积;
Ⅳ。
若P值≤α(在右尾部分),则在显著水平α下拒绝H0;
α,则在显著水平α下接受H0;
(二)K-S分布检验
Kolmogorov-Smirnov检验,用来检验一组样本数据是否服从某已知分布,或两组样本数据是否服从相同分布。
用函数ks。
test()实现,基本格式为:
ks.test(x,y,...,alternative=,exact=NULL)
其中,x为样本数据;
y为分布名(此时…为该分布的参数)或样本数据;
alternative设置是”two.sided"
双侧检验(默认)、”less"
左侧检验、"
greater”右侧检验;
exact设置是否计算精确p值,默认NULL.
1。
K-S单样本总体分布检验
用来检验样本数据是否服从某已知分布.它是一种基于经验分布函数的检验,令
其中,
为一组随机样本的累计概率分布函数,
为真实的分布函数。
当
时,
的极限分布满足:
原假设H0:
即分布相同;
备择假设H1:
二者分布不同。
X=c(420,500,920,1380,1510,1650,1760,2100,2300,2350)#某设备10次无故障工作时间的数据
lambda〈—mean(X)
lambda
[1]1489
ks。
test(X,"
pexp”,1/lambda)#检验是否服从参数为1/1489的指数分布
One—sampleKolmogorov-Smirnovtest
data:
X
D=0.30418,p—value=0.2563
alternativehypothesis:
two-sided
P值=0.2563〉0.05,接受原假设H0,即服从指数分布。
2。
两独立样本K—S同分布检验
假定有分别来自两个独立总体的两个样本,要检验是否服从同一分布。
设两个样本的样本量分别为
和
累积经验分布函数分别为
,令
则统计量
近似服从正态分布。
原假设H0:
服从同一分布;
备择假设H1:
不服从同一分布。
xx=c(0.61,0.29,0.06,0.59,-1。
73,—0.74,0.51,—0.56,0。
39,1.64,0。
05,-0。
06,0。
64,—0。
82,0。
37,1.77,1。
09,—1。
28,2.36,1.31,1。
05,—0.32,—0.40,1。
06,—2。
47)
yy=c(2.20,1.66,1.38,0。
20,0.36,0.00,0.96,1.56,0.44,1。
50,—0.30,0。
66,2。
31,3.29,—0。
27,-0.37,0.38,0.70,0.52,-0.71)
ks.test(xx,yy)#检验两组数据是否服从同一分布
Two-sampleKolmogorov—Smirnovtest
data:
xxandyy
D=0.23,p-value=0。
5286
two—sided
P值=0。
5286〉0。
05,接受原假设,即两组数据服从同一分布。
注1:
在做K-S检验时,有时会有错误提示“Kolmogorov-Smirnov检验里不应该有连结"
,这是因为K-S检验只对连续CDF有效,而连续CDF中出现相同值的概率为0,因此R会报错。
这也提醒我们,在做正态性检验之前,要先对数据进行描述性分析,对数据整体要先有个大致的认识,这也才后续才能选择正确的检验方法.
注2:
K-S检验主要用于定量数据,而卡方同质性检验主要用于分类数据。
(三)正态性检验
服从正态分布;
备择假设H1:
不服从正态分布
一、Shapiro-Wilk检验(W检验)
适合在样本量8≤n≤50时使用。
W检验是建立在次序统计量的基础上,对n个独立观测值按非降排序,记为
,检验统计量:
当总体分布为正态分布时,W值应该接近于1。
用函数shapiro.test()实现,基本格式为:
shapiro。
test(x)
其中,x为样本数据。
attach(mtcars)
test(mpg)
Shapiro—Wilknormalitytest
mpg
W=0.94756,p-value=0.1229
detach(mtcars)
1229>
0.05,接受原假设,即服从正态分布。
二、Kolmogorov-Smirnov检验(D检验)
适合在样本量50≤n≤1000时使用。
即将前文的K-S单样本总体分布检验的已知分布,设为正态分布即可。
或者使用Lilliefor检验,它是Kolmogorov—Smirnov正态性检验修正,使用nortest包中的函数lillie。
test()实现。
基本格式为:
lillie.test(x)
其中x为样本数据。
library(nortest)
lillie。
Lilliefors(Kolmogorov-Smirnov)normalitytest
D=0。
1263,p-value=0。
2171
P值=0.2171>
0。
05,接受原假设,即服从正态分布.
三、Jarque—Bera正态性检验
是基于偏度和峰度的联合分布检验法。
记偏度为S,峰度为K,则统计量:
用tseries包中的使用函数jarque。
bera.test()实现,基本格式:
jarque。
bera.test(x)
其中,x为样本数据.
library(tseries)
bera。
JarqueBeraTest
X—squared=2。
2412,df=2,p—value=0.3261
2412〉0。
05,接受原假设,即服从正态分布。
注:
还可以使用nromtest包中的函数jb。
norm.test()和ajb。
norm。
test(),前者参数除了x之外,多了一个蒙特卡罗模拟值,默认是2000,后者是J-B检验的修正,主要解决JB统计量收敛速度慢的缺点。
四、其它正态性检验
nortest包中还提供了:
1.AD正态性检验
函数ad。
test(x),计算统计量A值(越接近0越服从正态分布)和P值。
Cramer-vonMises正态性检验
函数cvm。
3。
Pearson卡方正态性检验
函数pearson。
4.Shapiro-Francia正态性检验
函数sf.test(x)
五、多元正态性检验
W检验shapiro.test()可推广到多元正态性检验,使用mvnormtest包中的函数mshapiro。
test()
或者使用Q—Q图检验,若有一个p×
1的多元正态随机向量x,均值为μ,协方差矩阵为Σ,那么x与μ的马氏距离的平方服从自由度为p的卡方分布。
Q—Q图展示卡方分布的分位数,横纵坐标分别是样本量与马氏距离平方值.如果点全部落在斜率为1、截距项为0的直线上,则表明数据服从多元正态分布。
library(MASS)
attach(UScereal)
y<
—cbind(calories,fat,sugars)
head(y)
caloriesfatsugars
[1,]212。
12123.03030318.18182
[2,]212.12123.03030315。
15151
[3,]100.00000.0000000.00000
[4,]146.66672.66666713.33333
[5,]110。
00000.00000014。
00000
[6,]173.33332.66666710。
66667
#mshapiro。
test()函数检验多元正态性
library(mvnormtest)
mshapiro。
test(t(y))#注意要对y转置
Z
W=0.6116,p—value=7。
726e—12
#Q—Q图检验多元正态性
center<
—colMeans(y)
n〈—nrow(y)
p<
—ncol(y)
cov<
—cov(y)
d〈—mahalanobis(y,center,cov)
coord〈—qqplot(qchisq(ppoints(n),df=p),d,main="
QQPlotAssessingMultivariateNormality"
ylab=”MahalanobisD2"
)
abline(a=0,b=1)
identify(coord$x,coord$y,labels=row.names(UScereal))