《统计分析软件:使用R与Python》 课件 第6章-R 语言基本统计推断_第1页
《统计分析软件:使用R与Python》 课件 第6章-R 语言基本统计推断_第2页
《统计分析软件:使用R与Python》 课件 第6章-R 语言基本统计推断_第3页
《统计分析软件:使用R与Python》 课件 第6章-R 语言基本统计推断_第4页
《统计分析软件:使用R与Python》 课件 第6章-R 语言基本统计推断_第5页
已阅读5页,还剩98页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

6.1R语言汇总统计量函数6.2R语言参数估计方法6.3参数假设检验6.4非参数假设检验第6章

R语言基本统计推断R语言基本统计推断R语言汇总统计量函数mean,median,sd,var,quantile,cor,cov非参数假设检验K-S检验Wilcoxon秩和检验

卡方检验Fisher检验R语言参数估计方法点估计(矩法、MLE)

区间估计参数假设检验假设检验的一般步骤、t-检验、二项分布、泊松分布、样本比例检验、方差分析6.1R语言汇总统计量函数1.均值均值(mean)是数据的平均数,描述数据取值的平均位置。R语言中用mean()函数计算样本的均值,基本语法是:mean(x,trim=0,na.rm=FALSE)其中x是对象(如向量、矩阵、数组或数据框),trim参数是计算均值前去掉与均值差较大数据的比例,缺省值为0,即包括全部数据。当na.rm=TRUE时,将剔除缺失数据后再求均值。选用参数trim减少输入误差对计算的影响如果第一个学生的体重少输入一个点,变为750千克

R语言中用median()函数计算样本的均值median(x,na.rm=FALSE)median(w)##[1]63.5针对包含异常值的数据w1(即第一人体重错误输入为750千克),计算中位数得:学生体重数据中的中位数median(w1)##[1]63.5学生体重中位数仍为63.5千克,基本不受异常值的影响,具有一定稳健性。3.百分位数

在R软件中,quantile()函数计算观测量的百分位数quantile(x,probs=seq(0,1,0.25),na.rm=FALSE,names=TRUE,type=7,...)quantile(w)##0%25%50%75%100%##47.4057.8563.5066.7575.00quantile(w,probs=seq(0,1,0.2))##0%20%40%60%80%100%##47.4056.9862.2064.0067.3275.00改变probs参数的默认值,可以给出不同位置的分位数:4.方差、标准差方差函数var()和标准差函数sd()的基本语法为var(x,y=NULL,na.rm=FALSE,use)sd(x,na.rm=FALSE)var(w)sd(w)##[1]56.47##[1]7.5155.极差

在R软件中,计算极差可借助range()函数range(...,na.rm=FALSE)ran=range(w)#计算极差ran[2]-ran[1]##[1]27.6对于上述体重数据,极差计算如下:6.相关系数与协方差对于来自多元总体的数据,除了分析各个分量的取值特点外,更重要的是分析各个分量之间的相关关系,如相关系数和协方差。R语言中,cor()和cov()函数可以计算相关系数和协方差,cor(x,y=NULL,use="everything",method=c("pearson","kendall","spearman"))cov(x,y=NULL,use="everything",method=c("pearson","kendall","spearman"))对于JS数据集,部分数值变量的协方差矩阵如下:JS=read.csv("JSdata.csv")cor(JS[,6:8])##heightweightsalary##height1.00000.89480-0.13647##weight0.89481.00000-0.09135##salary-0.1365-0.091351.00000cor()函数在默认情况下得到的结果是一个方阵(所有变量之间两两计算相关)。cor()函数也可以计算非方形的相关矩阵。#身高、体重两列变量与工资变量之间的相关系数cor(JS[,6:7],JS[,8])##[,1]##height-0.13647##weight-0.09135注意:cor()只能计算出相关系数,无法给出显著性水平p值。如果想计算p值,建议使用psych包中的corr.test函数或Hmisc包里的rcorr()函数。对于JS数据集,部分列的协方差矩阵如下:JS=read.csv("JSdata.csv")cov(JS[,6:8])##heightweightsalary##height78.8875.37-39.84##weight75.3789.94-28.48##salary-39.84-28.481080.536.2R语言参数估计方法

估计废品率估计新生儿的体重估计湖中鱼数估计降雨量

在参数估计问题中,假定总体分布形式已知,未知的仅仅是一个或几个参数.参数估计的两种方法点估计区间估计

battery<-c(20.2,22.8,19.5,17.8,20.8)#续航时间样本数据

6.2.1

点估计

寻求估计量的方法1.矩估计法2.极大似然法3.最小二乘法4.贝叶斯方法……这里我们只介绍前面两种方法.其基本思想是用样本矩估计总体矩.理论依据:它是基于一种简单的“替换”思想建立起来的一种估计方法.是英国统计学家K.皮尔逊最早提出的.大数定律矩估计法记总体k阶矩为样本k阶矩为用相应的样本矩去估计总体矩的估计方法就称为矩估计法.记总体k阶中心矩为样本k阶中心矩为例:求伽马分布的矩估计

set.seed(123)x.gam<-rgamma(200,rate=0.5,shape=3.5)##伽马分布λ=0.5(scale参数)α=3.5(shape参数)#首先算出样本矩med.gam<-mean(x.gam)##样本均值var.gam<-var(x.gam)##样本方差使用矩估计法,把总体矩用样本矩表示出来lambda_hat<-med.gam/var.gam##lambda的矩估计量alpha_hat<-((med.gam)^2)/var.gam##alpha的矩估计量cat("lambda估计=",lambda_hat,"alpha估计=",alpha_hat,"\n")##lambda估计=0.544alpha估计=3.609优点:是简单易行,并不需要事先知道总体是什么分布缺点:当总体类型已知时,没有充分利用分布提供的信息,且矩估计量不具有唯一性。极大似然法

求极大似然估计量的步骤对数似然方程例如,对于正态分布总体,似然函数如下:

由于似然函数是正数的乘积(其中许多可能非常小),因此使用对数似然函数更方便、更稳定

下面,我们生成一组服从正态分布的数据,假设我们并不知道参数的真实值,我们用MLE方法对其进行估计##[1]4.967可以针对µ的许多候选值绘制似然函数,并查看曲线最高的位置。使得似然函数最大的mu值为4.97

引例1估计某明星年龄该明星的年龄35岁—点估计该明星的年龄,九成可能在30-50岁之间6.2.2

区间估计也就是说,我们希望确定一个区间,使我们能以比较高的可信度或可靠程度相信它包含真参数值.这里所说的“可靠程度”是用概率来度量的,称为置信概率,置信度或置信水平.

求置信区间的一般步骤1.明确问题,是求什么参数的置信区间?置信水平

是多少?

P(a≤S(T,)≤b)=

则就是的100(

)%的置信区间.可见,确定区间估计很关键的是要寻找一个待估参数和估计量T的函数S(T,),且S(T,)的分布为已知,不依赖于任何未知参数(这样我们才能确定一个大概率区间).而这与总体分布有关,所以,总体分布的形式是否已知,是怎样的类型,至关重要.这里,我们主要讨论总体分布为正态的情形.根据置信区间的求解过程自行编写R函数利用R中相应假设检验函数给出置信区间R

base包中没有直接的函数做

2已知时置信区间没有只知道汇总数据的对应函数单正态总体方差的区间估计也需自己编写函数…R中求置信区间单正态总体均值的置信区间可用t.test()函数双正态总体方差比的置信区间可用var.test()函数…假设方差未知,要估计JS数据中身高均值的置信区间,置信水平为95%,可以使用t.test()函数:JS=read.csv("JSdata.csv")t.test(JS$height)####OneSamplet-test####data:JS$height##t=117,df=38,p-value<2e-16##alternativehypothesis:truemeanisnotequalto0##95percentconfidenceinterval:##163.6169.3##sampleestimates:##meanofx##166.4身高的95%置信区间为(163.5568,169.3150)当然,也可以自己编写R函数给出置信区间。下面我们以单正态总体均值的置信区间为例讨论如何用R计算置信区间。

即找到一个随机变量的临界值,使得α/2的面积位于其右侧。这个临界值可用分位数函数qnorm()或qt()求出。

xbar=0.093;sigma=0.012;alpha=0.05;n=60z_half_alpha=qnorm(0.025,mean=0,sd=1,lower.tail=FALSE)cri_value=z_half_alpha*(sigma/sqrt(n))deg_upp=xbar+cri_valuedeg_low=xbar-cri_valuelibrary(scales)c(percent(deg_low,accuracy=0.001),percent(deg_upp,accuracy=0.001))置信区间为[8.996%,9.604%]例:R计算置信区间奶茶的容量按标准应在标称容量480毫升和550毫升之间.

引例

500毫升奶茶实际370毫升?流水线上奶茶不断地封装,然后送到卖场

怎么知道这批奶茶的容量是否合格呢?把每一杯都打开倒入量杯,看看容量是否合于标准.这样做显然不行!6.3假设检验通常的办法是进行抽样检查.如每隔1小时,抽查5杯,得5个容量的值X1,…,X5,根据这些值来判断生产是否正常.如发现不正常,就应停产,找出原因,排除故障,然后再生产;如没有问题,就继续按规定时间再抽样,以此监督生产,保证质量.

很明显,不能由5杯容量的数据,在把握不大的情况下就判断生产不正常,因为停产的损失是很大的.

当然也不能总认为正常,有了问题不能及时发现,这也要造成损失.

如何处理这两者的关系,假设检验面对的就是这种矛盾.

在正常生产条件下,由于种种随机因素的影响,每罐奶茶的容量应在500毫升上下波动.这些因素中没有哪一个占有特殊重要的地位.因此,根据中心极限定理,假定每杯容量服从正态分布是合理的.它的对立假设是:称H0为原假设(或零假设,解消假设);称H1为备选假设(或对立假设).在实际工作中,往往把不轻易否定的命题作为原假设.H0:(=500)H1:

那么,如何判断原假设H0

是否成立呢?问题归结为根据小概率原理对差异作定量的分析,以确定其性质.

“系统误差”或随机误差?假设检验的一般步骤

32

1检验方法Z检验t检验检验常见假设检验的拒绝域R语言中将假设检验存储在称为htest

的特殊对象类中。htest对象包含来自假设检验、检验统计量(例如,t检验的t统计量或相关性检验的相关系数)、p值、置信区间的所有主要结果。可以使用$符号访问htest对象的特定元素##[1]"statistic""parameter""p.value"##[4]"""estimate""null.value"##[7]"stderr""alternative""method"##[10]""6.3.1t-检验t.test(x,y=NULL,alternative=c("two.sided","less","greater"),mu=0,paired=FALSE,var.equal=FALSE,conf.level=0.95,...)若仅出现数据x,则进行单样本t检验;若出现数据x和y,则进行双样本的t检验alternative=c("two.sided","less","greater")用于指定所求置信区间的类型;alternative="two.sided"是缺省值,表示求置信区间,alternative="less"表示求置信上限;alternative="greater"表示求置信下限.mu表示均值,它仅在假设检验中起作用,默认值为零.单正态总体参数t检验例:有原始数据的t检验汽车厂商声称其发动机排放标准的一个指标平均低于20个单位。在抽查了10台发动机之后,得到下面的排放数据:17.0、21.7、17.9、22.9、20.7、22.4、17.3、21.8、24.2、25.4。该样本均值为21.13。究竟能否由此认为该指标均值超过20?这次我们的假设检验问题就是检验统计量为>x=c(17.0,21.7,17.9,22.9,20.7,22.4,17.3,21.8,24.2,25.4)>mu=20>t.test(x,mu=20,alternative="greater")OneSamplet-testdata:xt=1.2336,df=9,p-value=0.1243alternativehypothesis:truemeanisgreaterthan2095percentconfidenceinterval:19.4508Infsampleestimates:meanofx21.13因此,我们没有证据否定零假设(如果显著性水平小于它)。单正态总体参数t检验也可以自己写代码实现上述功能:>x=c(17.0,21.7,17.9,22.9,20.7,22.4,17.3,21.8,24.2,25.4)>xbar=mean(x);sigma=sd(x)

>mu=20

>n=length(x)

>t<-(xbar-mu)/(sigma/sqrt(n))

>t

[1]1.233576

>p1<-pt(t,df=n-1,lower.tail=FALSE)

>p1

[1]0.1243025健康成年男子脉搏均数为72次/分。某医生在某山区随机抽查健康成年男子25人,其脉搏均数为74.2次/分,标准差为6.5次/分。根据这个资料能否认为某山区健康成年男子脉搏数与一般健康成年男子的不同?检验统计量为例:无原始数据的t检验#根据公式算出t值x<-74.2;mu<-72;sigma<-6.5;n<-25t<-(x-mu)/(sigma/sqrt(n))#或者用n-1代替n#用pt()函数,输入t值和自由度df(n-1),得到p值#双侧p=2*pt(-abs(t),df=24)检验结果为t=1.692308,显著性P值=0.1035319>0.05,接受原假设,说明该法测定的成年男子脉搏数与总体无显著差异,认为某山区健康成年男子脉搏数与一般健康成年男子的相同。思考题

t.test(X,alternative=

“greater”,mu=

225)两独立样本t检验两独立样本t检验用于检验两组相互独立数据均值间有无显著差别:先假定两组相应的总体均值相等,看两组均值实际相差与此假设是否靠近。

利用t检验法检验要求:具有相同方差的两正态总体均值差的假设.对应正态性检验,可以使用shapiro.test()函数;方差齐性检验,则可以使用var.test()函数或bartlett.test()函数。JSdata数据中性别不同的两组教师体重均值是否相同?例:有原始数据的两样本t检验第一步:正态性检验两组数据Shapiro-Wilk正态性检验的p值均远大于0.05,说明可以认为两组数据服从正态分布。第二步:方差齐性检验var.test方差齐性检验中的结果p值大于0.05,说明两组数据基本满足方差齐性要求。第三步:t检验t检验中p值大于0.05,不能拒绝原假设,即不能认为两组教师中体重存在显著差异。如果数据满足正态性假设,但不满足方差齐性要求,则进行修正的WelchT检验。var.equal=FALSE例如,测量某两个地区水中碳酸钙的含量,分别从两个地区随机抽取20份样品进行碳酸钙检测,分别得到两个地区碳酸钙含量的均数(20.95,21.79)和标准差(5.89,3.43)。试判断两个地区水中碳酸钙的含量是否有差异?例:无原始数据的两样本t检验#输入对照组实验组均值x1,x2;组数n1,n2;方差s1,s2x1<-20.95;x2<-21.79;n1<-20;n2<-20;s1<-5.89;s2<-3.43#计算两独立样本共同的标准差sc<-sqrt((1/n1+1/n2)*((n1-1)*s1**2+(n2-1)*s2**2)/(n1+n2-2))#t值,自由度df,p值t<-(x2-x1)/scdf<-n1+n2-2p<-2*pt(-abs(t),df=df)t;pt=0.5511486,p值0.5847581>0.05,不拒绝原假设,不能认为两个地区水中碳酸钙的含量有差异思考题

t.test(X,Y,var.equal=TRUE,alternative=

“less“)配对t检验在医学研究中,常用配对设计。配对设计主要有4种情况:同一受试对象处理前后的数据,同一受试对象两个部位的数据,同一样品用两种方法检验的结果,配对的两个受试对象分别接受两种处理后的数据。例1.原始数据的配对t检验判断简便法和常规法测定尿铅含量的差别有无统计意义,对12份人尿同时用两种方法进行测定,所得结果如下表所示,请分析两种测定方法的测量结果是否不同?配对t检验的结果为:t=0.16232,显著性p值=0.874>0.05,不能拒绝原假设H0,说明不能认为两种方法测定尿铅含量的结果不相同。#输入两组值x<-c(2.41,2.90,2.75,2.23,3.67,4.49,5.16,5.45,2.06,1.64,1.06,0.77)y<-c(2.80,3.04,1.88,3.43,3.81,4.00,4.44,5.41,1.24,1.83,1.45,0.92)#配对样本t检验t.test(x,y,paired=T)慢性支气管炎病人血中胆碱酯酶活性常常偏高。某校药理教研室将同性别同年龄的病人与健康人配成8对,测量该值加以比较,配对两组人差值的均值为0.625,标准差为0.78.问可否通过这一资料得出较明确的结论?例:无原始数据的配对t检验配对t检验的结果为:t=2.266368,显著性p值=0.05778616>0.05,不能拒绝原假设H0,说明不能认为慢性支气管炎病人与健康人血中胆碱酯酶活性不同。#依次输入配对样本的差值d、标准差s、配对数nd<-0.625;s<-0.78;n<-8#算t值t<-d/(s/sqrt(n))#输入自由度n-1,pt()函数得到p值df<-n-1p=2*pt(-abs(t),df=df)t;p

6.3.2二项分布的总体检验使用binom.test(x,n,p=0.5,alternative=c("two.sided","less","greater"),conf.level=0.95),x为指定成功的次数,n为实验的总次数,p为每次实验成功的概率。

例:二项分布的总体检验>binom.test(445,500,p=0.85)Exactbinomialtestdata:445and500numberofsuccesses=445,numberoftrials=500,p-value=0.01207alternativehypothesis:trueprobabilityofsuccessisnotequalto0.8595percentconfidenceinterval:0.85923420.9160509sampleestimates:probabilityofsuccess0.89p-value=0.01207<0.05,故拒绝原假设,即认为种衣剂对种子发芽率有显著效果p-value=0.09048>0.05,故不能接受原假设,即不能认为该地区新生儿染色体低于一般水平例:按照以往经验,新生儿染色体异常率一般为1%,某医院观察了当地400名新生儿,有一例染色体异常,问该地区新生儿染色体是否低于一般水平?>binom.test(1,400,p=0.01,alternative="less")Exactbinomialtestdata:1and400numberofsuccesses=1,numberoftrials=400,p-value=0.09048alternativehypothesis:trueprobabilityofsuccessislessthan0.0195percentconfidenceinterval:0.00000000.0118043sampleestimates:probabilityofsuccess0.00256.3.3泊松分布的总体检验poisson.test(x,T=1,r=1,alternative=c("two.sided","less","greater"),conf.level=0.95)#x-事件数量,T-事件计数的时间基准,r-假设的比率对Poisson总体参数的检验,完全类似于二项分布总体参数的检验。对泊松分布中的速率参数或两个速率参数之间的比率的精确检验。

例:泊松分布的总体检验

>poisson.test(x=60,T=50,r=1,alternative="greater",conf.level=0.95)ExactPoissontestdata:60timebase:50numberofevents=60,timebase=50,p-value=0.09227alternativehypothesis:trueeventrateisgreaterthan195percentconfidenceinterval:0.9570464Infsampleestimates:eventrate1.2p-value=0.09227>0.05,在0.95的置信区间下接受原假设H0,后一小时注册人数与前一小时无差异。6.3.4样本比例的检验

prop.test(x,n,p=NULL,alternative="two.sided",correct=TRUE)#x为样本成功次数,n是样本量,p是成功的比例

检验统计量

例:样本比率的检验

p-value=0.5477>0.05,无法拒绝原假设,故认为该大学的男、女学生家中拥有计算机的比率一致。>success<-c(23,25)>total<-c(102,135)>prop.test(success,total)2-sampletestforequalityofproportionswithcontinuitycorrectiondata:successoutoftotalX-squared=0.36148,df=1,p-value=0.5477alternativehypothesis:two.sided95percentconfidenceinterval:-0.072564760.15317478sampleestimates:prop1

prop20.2254902

0.18518526.3.5方差分析方差分析(AnalysisofVariance,简写为ANOVA)又称变异数分析或F检验,用于两个及两个以上样本均值差别的显著性检验,目的是推断两组或多组数据的总体均值是否相同,检验两个或多个样本均值的差异是否有统计学意义。方差分析假设:各样本须是相互独立的随机样本各样本来自正态分布总体各总体方差相等,即方差齐

aov()函数的语法为aov(formula,data=dataframe)formula可使用的特殊符号如下,其中y为因变量,A、B、C为自变量。符号用法:~分隔符,左边为因变量,右边为自变量。例y~A+B+C+分隔自变量:表示交互项,如y~A+B+A:B*表示所有可能的交互项,如y~A*B*C等价于y~A+B+C+A:B+A:C+B:C+A:B:C^表示交互项达到的某个次数,如y~(A+B+C)^2等价于y~A+B+C+A:B+A:C+B:C.表示包含除因变量以外的所有变量。如y~.例:R语言方差分析某医院欲研究A、B、C三种降血脂药物对家兔血清肾素血管紧张素转化酶(ACE)的影响,将家兔随机分为三组,均喂以高脂饮食,分别给予不同的降血脂药物。一定时间后测定家兔血清ACE浓度(u/ml),A组(4544434748444644404542404346474546454344),B组(45484743464748464349464347464746454644454644434245),C组(4748454646444548495049484744454645434445464342),问三组家兔血清ACE浓度是否相同?>a<-c(45,44,43,47,48,44,46,44,40,45,42,40,43,46,47,45,+46,45,43,44)>b<-c(45,48,47,43,46,47,48,46,43,49,46,43,47,46,47,46,+45,46,44,45,46,44,43,42,45)>c<-c(47,48,45,46,46,44,45,48,49,50,49,48,47,44,45,46,+45,43,44,45,46,43,42)>dfCRp<-data.frame(value=c(a,b,c),group=factor(c(rep(“1”,20),rep("2",25),rep("3",23))))方差分析需要一定的假设,即数据集应该符合正态和各组的方差相等,可以分别用shapiro.test和bartlett.test检验从P值观察到这两个假设是符合的。对于不符合假设的情况,我们就要用到非参数方法,例如Kruskal-Wallis秩和检验>shapiro.test(dfCRp$value)#检查是否正态分布Shapiro-Wilknormalitytestdata:dfCRp$valueW=0.97397,p-value=0.1654>bartlett.test(value~group,data=dfCRp)Bartletttestofhomogeneityofvariancesdata:valuebygroupBartlett'sK-squared=0.76406,df=2,p-value=0.6825正态性检验和方差齐性检验P值均大于0.05,可以认为数据满足正态性和方差齐性的要求。>aovCRp=aov(value~group,data=dfCRp)>summary(aovCRp)

Df

SumSqMeanSq

Fvalue

Pr(>F)

group

2

26.29

13.146

3.2440.0454*Residuals65263.40

4.052---Signif.codes:0‘***’0.001‘**’0.01‘*’0.05‘.’0.1‘

’1p-value=0.0454<0.05,拒绝原假设,故认为三组家兔血清ACE浓度不同。>oneway.test(value~group,data=dfCRp,var.equal=TRUE)#与aov()结果基本相同。One-wayanalysisofmeansdata:valueandgroupF=3.2442,numdf=2,denomdf=65,p-value=0.0454方差分析只告诉我们这三组之间是不同的,但没有告诉哪两组之间有明显差别,此时需要使用TukeyHSD等函数进行均值的多重比较分析做出推断。>TukeyHSD(aovCRp)Tukeymultiplecomparisonsofmeans95%family-wiseconfidencelevelFit:aov(formula=value~group,data=dfCRp)$group

diff

lwr

upr

p-adj2-11.1300000

-0.31850529

2.578505

0.15526733-11.5195652

0.04333482

2.995796

0.04224953-20.3895652

-1.00547115

1.784602

0.7817904a组和c组的差异有显著意义。boxplot(value~group,data=dfCRp,xlab="group",ylab="value")6.4非参数假设检验参数检验方法推定或假定了总体分布的具体形式(如正态分布),只是其中含有若干未知参数。但在许多实际问题中,人们往往对总体的分布知之甚少,很难对总体的分布形式做出正确的假定,最多只能对总体的分布做出诸如连续型分布、关于某点对称分布等一般性的假定。这种不假定总体分布的具体形式,尽量从数据本身来获得所需要的信息的检验方法称为非参数检验方法。非参数假设检验仍然要求各样本须是相互独立的随机样本。非参数检验中常用到的一个概念是秩(rank),秩指的是样本数据按照升序排列之后,每个观测值的位置。比如:159183178513719观测值357891315171819秩12345678910如果有重复,就取平均,比如1,2,2,3。那么秩就为1,2.5,2.5,4。R语言非参数检验函数K-S检验Wilcoxon秩和检验卡方检验Fisher检验6.4.1K-S检验Kolmogorov-Smirnov分布一致性检验:检验的目的:对于单样本,检验其是否符合某种分布。对于双样本,检验其是否属于同一分布。ks检验,理论上可以检验任何分布.原假设:X具有分布F(单样本)或X与Y同分布(双样本)ks.text(x,y,…,alternative=c(“two.sided”,“less”,“greater”),exact=NULL,tol=1e-8,

simulate.p.value=FALSE,B=2000)x:数据向量y:数据向量或用于命名分布函数的字符串。…:由y值定义的参数例:K-S检验(单样本和双样本)>x<-c(420,500,920,1380,1510,1650,1760,2100,2300,2350)>ks.test(x,"pexp",1/1500)One-sampleKolmogorov-Smirnovtestdata:xD=0.30148,p-value=0.2654alternativehypothesis:two-sided>set.seed(123)>x=runif(100)>y=runif(100)>ks.test(x,y)Two-sampleKolmogorov-Smirnovtestdata:xandyD=0.09,p-value=0.8127alternativehypothesis:two-sidedP值均大于0.05,可以认为数据和给定分布一致或两组数据分布无明显差异。6.4.2Wilcoxon符号秩检验、秩和检验

例:R语言Wilcoxon秩检验

对来自一个总体样本的检验假定某电池厂宣称该厂生产的某种型号电池寿命的中位数为140安培小时,为了检验该厂生产的电池是否符合其规定的标准,现从新近生产的一批电池中抽取20个随机样本,并对这个20个电池的寿命进行了测试,试用Wilcoxon符号秩检验分析该厂生产的电池是否符合其标准。假设如下:H0:电池中位数M>=140安培小时H1:电池中位数M<140安培小时X<-

c(137,140,138.3,139,144.3,139.1,141.7,137.3,133.5,138.2,141.1,139.2,136.5,136.5,135.6,138,140.9,140.6,136.3,134.1)

wilcox.test(X,mu=140,alternative="less",exact=FALSE,correct=FALSE,+=TRUE)Wilcoxonsignedranktestdata:XV=34,p-value=0.007034alternativehypothesis:truelocationislessthan14095percentconfidenceinterval:-Inf139.2sampleestimates:(pseudo)

median138.2p-value=0.007034<0.05,故拒绝原假设,认为中位数达不到140今测得10名非铅作业工人和7名铅作业工人的血铅值,如下表所示。试用Wilcoxon秩和检验分析两组工人血铅值有无差异。>nonlead<-c(24,26,29,34,43,58,63,72,87,101)>lead<-c(82,87,97,121,164,208,213)>wilcox.test(nonlead,lead,alternative="less",exact=FALSE,correct=FALSE)Wilcoxonranksumtestdata:nonleadandleadW=4.5,p-value=0.001449alternativehypothesis:truelocationshiftislessthan0P值小于0.05,拒绝原假设,即铅作业工人血铅值高于非作业工人。

非成对样本的秩次和检验6.4.4Pearson卡方检验“Pearson卡方检验”可用于两种情境的变项比较:拟合优度(GoodnessofFit

)检验,和独立性检验。“拟合优度”验证一组观察值的次数分配是否异于理论上的分配。“独立性检验”验证从两个变量抽出的配对观察值组是否互相独立(例如:每次都从A国和B国各抽一个人,看他们的反应是否与国籍无关)。

拟合优度(总体分布)的卡方检验chisq.test(x,y=NULL,correct=TRUE,p=rep(1/length(x),length(x)),rescale.p=FALSE,simulate.p.value=FALSE,B=2000)#p默认取均匀分布的概率

因为p=0.0123小于0.05,因此我们不能认为这批数据服从均匀分布。>y=c(12,5,19,7,7)>chisq.test(y)Chi-squaredtestforgivenprobabilitiesdata:yX-squared=12.8,df=4,p-value=0.0123例:总体分布的卡方检验(均匀分布)用Pearson拟合优度卡方检验检验学生成绩是否服从正态分布:X<-c(25,45,50,54,55,61,64,68,72,75,75,78,79,81,83,84,84,84,85,86,86,86,87,89,89,89,90,91,91,92,100)A<-

table(cut(X,br=c(0,69,79,89,100)))#分组计数例:总体分布的卡方检验(正态分布)>A

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论