【数据分析 R语言实战】学习笔记 第七章 假设检验及R实现 |
您所在的位置:网站首页 › z检验统计量的p值 › 【数据分析 R语言实战】学习笔记 第七章 假设检验及R实现 |
假设检验及R实现 7.1假设检验概述 对总体参数的具体数值所作的陈述,称为假设;再利用样本信息判断假设足否成立,这整个过程称为假设检验。 7.1.1理论依据 假设检验之所以可行,其理沦背景是小概率理论。小概率事件在一次试验中儿乎是不可能发生的,但是它一以发生,我们就有理由拒绝原假设:反之,小概率事件没有发生,则认为原假设是合理的。这个小概率的标准由研究者事先确定,即以所谓的显著性水平α(0a,则不拒绝原假设。 7.1.3两类错误 7.2单正态总体的检验 单正态总体的假设检验方法: 7.2.1均值μ的检验 (1) σ2已知 R自带的函数中只提供了t检验的函数t.test(),而没有Z检验的函数,自己编写函数z.test(),用于计算z统计量的值以及P值: > z.test=function(x,mu,sigma,alternative="two.sided"){ + n=length(x) + result=list() #构造一个空的list,用于存放输出结果 + mean=mean(x) + z=(mean-mu)/(sigma/sqrt(n)) #计算z统计量的值 + options(digits=4) #结果显示至小数点后4位 + result$mean=mean;result$z=z #将均值、z值存入结果 + result$P=2*pnorm(abs(z),lower.tail=FALSE) #根据z计算P值 + #若是单侧检验,重新计算P值 + if(alternative=="greater") result$P=pnorm(z,lower.tail=FALSE) + else if(alternative=="less") result$P=pnorm(z) + result + }
BSDA包提供了函数z.test( ),它可以对基于正态分布的单样本和双样本进行假设检验,其使用方法如下: z.test(x,y=NULL,alternative="two.sided",mu=0,sigma.x=NULL, sigma.y=NULL, onf.level = 0.95) 其中,x和Y为数值向量,默认y=NULL,即进行单样本的假设检验:alternative用于指定求置信区问的类型,默认为two.sided>表示求双尾的置信区间,为less则求置信上限,greater求置信F限:mu表示均值,仅在假设检验中起作用,默认为0;sigma.x和sigma.y分别指定两个样本总体的标准差。 例: 东方财富数据中心可以获得2012年各月北京市的新建住宅价格指数,是否服从均值为102.4、方差为0.45(标准差为0.67)的正态分布 > bj=c(102.5,102.4,102.0,101.8,101.8,102.1,102.3,102.5,102.6,102.8,103.4,104.2) > z.test(x=bj,mu=102.4,sigma=0.67,alternative="two.sided") $mean [1] 102.5 $z [1] 0.6894 $P [1] 0.4906使用程序包BSDA中的函数z.test() > library(BSDA) > z.test(x=bj,mu=102.4,sigma=0.67,alternative="two.sided") $mean [1] 102.5 $z [1] 0.6894 $P [1] 0.4906 检验的结果是,由于P =0.4906> a =0.05,因此在0.05的显署性水平下,不能拒绝原假设,认为2012年各月北京的新建住宅价格指数服从均值为102.4的正态分布。 (2)σ2未知 7.2.2方差σ2的检验 (1) μ已知 检验的结果为P值非常大,远大于a=0.05 ,因此不能拒绝原假设,说明新建住宅价格指数的方差大于0.25,变动很大。 7.3两正态总体的检验 单正态总体的假设检验方法:
程序包BDSA中的函数z.test()可以快速地实现方差己知时两总体均值差的假设检验。 以Bamberger's百货公司的数据为例,公司实施延长营业时间的改革计划,假设已知改革前后销售额的总体标准差分别为8和12,检验这项措施对销售业绩是否有显著影响。 > sales=read.table("D:/Program Files/RStudio/sales.txt",header=T) > attach(sales) > z.test2(prior,post,8,12,alternative="less") $mean [1] -24.54 $z [1] -8.843 $P [1] 4.678e-19
使用函数z.test()可以得到相同的结果,同时还可以输出置信区间估计。 > z.test(prior,post,sigma.x=8,sigma.y=12,alternative="less") Two-sample z-Test data: prior and post z = -8.8, p-value t.test(prior,post,var.equal=FALSE,alternative="less") Welch Two Sample t-test data: prior and post t = -8.4, df = 44, p-value = 6e-11 alternative hypothesis: true difference in means is less than 0 95 percent confidence interval: -Inf -19.62 sample estimates: mean of x mean of y 60.61 85.167.3.2成对数据的t检验 > x=c(117,127,141,107,110,114,115,138,127,122) > y=c(113,108,120,107,104,98,102,132,120,114) > t.test(x,y,paired=TRUE,alternative="greater") Paired t-test data: x and y t = 4.6, df = 9, p-value = 7e-04 alternative hypothesis: true difference in means is greater than 0 95 percent confidence interval: 6.002 Inf sample estimates: mean of the differences 10 p远小于a=0.05 ,拒绝原假设,说明药物组均值明显降低,该药物有降压作用。 7.3.3两总体方差的检验 检验结果的P =0.01914 binom.test(214,2000,p=0.1) Exact binomial test data: 214 and 2000 number of successes = 210, number of trials = 2000, p-value = 0.3 alternative hypothesis: true probability of success is not equal to 0.1 95 percent confidence interval: 0.09379 0.12138 sample estimates: probability of success 0.107 由于p=0.2966>a=0.05,故不能拒绝原假设,说明总体居民的困难户比率保持在10%左右。检验结果还给出了置信区问和样本比率估计值0.107 7.4.2比率的近似检验 7.5非参数的检验 7.5.1总体分布的c2检验 (1)理论分布已知 R软件中提供了实现Pearson拟合优度卡方检验的函数chisq.test(),其调用格式为 chisq.test(x, y = NULL, correct = TRUE,p = rep(1/length(x), length(x)), rescale.p = FALSE,simulate.p.value = FALSE, B = 2000) > bj=c(102.5,102.4,102.0,101.8,101.8,102.1,102.3,102.5,102.6,102.8,103.4,104.2) > hist(bj) 总体分布的卡方检验结果为P=0.05849> a =0.05 ,因此在0.05的显著性水平下,不能够拒绝原假设,可以认为北京市新建住宅价格指数服从正态分布。 7.5.2Kolmogrov-Smirnov检验 (1)单样本KS检验 Kolmogorov-Smirnov检验是用来检验一个数据的观测经验分布是否是已知的理论分布,当两者之间的差距很小时可以认为该样本取自己知的理论分布。KS检验通过经验分布与假设分布的上确界来构造统计量,因此它可以检验任何分布类型: 单样本KS检验的结果为P值=0.2654,其大于显著性水平0.05,因此不能拒绝原假设,说明该设备的寿命服从λ=1/1500的指数分布。 (2)两样本KS检验 假设有分别来自两个独立总体的两样本,要想检验它们背后的总体分布是否相同,就可以进行两独立样本的KS检验。原理与单样本相同,只需要把原假设中的分布换成另一个样本的经验分布即可。 (3) KS检验与卡方检验的比较 KS检验与卡方检验的相同之处在一于它们都是采用实际频数和期望频数之差进行检验。但不同点在于,卡方检验必须先将数据分组才能获得实际的观测频数,而KS检验法可以直接对原始数据的n个观测值进行检验,所以它对数据的利用更完整。另外在使用范围上,卡方检验主要用于分类数据,而KS检验主要用于有计量单位的连续和定量数据。 KS检验作为一种非参数方法,具有稳健性。它不依赖于均值的位置,对数据量纲不敏感,一般来讲比卡方检验更有效。与其他参数检验不同,KS检验的适用范围非常广,不像t检验一样局限于正态分布(当数据偏离较大时t检验会失效)。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |