R语言:十一个统计检验都在这了

Python012

R语言:十一个统计检验都在这了,第1张

R语言的各种检验

1、W检验(Shapiro–Wilk (夏皮罗–威克尔 ) W统计量检验)

检验数据是否符合正态分布,R函数:shapiro.test().

结果含义:当p值小于某个显著性水平α(比如0.05)时,则认为

样本不是来自正态分布的总体,否则则承认样本来自正态分布的总体。

2、K检验(经验分布的Kolmogorov-Smirnov检验)

R函数:ks.test(),如果P值很小,说明拒绝原假设,表明数据不符合F(n,m)分布。

3、相关性检验:

R函数:cor.test()

cor.test(x, y,

alternative = c("two.sided", "less", "greater"),

method = c("pearson", "kendall", "spearman"),

exact = NULL, conf.level = 0.95, ...)

结果含义:如果p值很小,则拒绝原假设,认为x,y是相关的。否则认为是不相关的。

4、T检验

用于正态总体均值假设检验,单样本,双样本都可以。

t.test()

t.test(x, y = NULL,

alternative = c("two.sided", "less", "greater"),

mu = 0, paired = FALSE, var.equal = FALSE,

conf.level = 0.95, ...)

结果意义:P值小于显著性水平时拒绝原假设,否则,接受原假设。具体的假设要看所选择的是双边假设还是单边假设(又分小于和大于)

5、正态总体方差检验

t.test(x, y = NULL,

alternative = c("two.sided", "less", "greater"),

mu = 0, paired = FALSE, var.equal = FALSE,

conf.level = 0.95, ...)

结果含义:P值小于显著性水平时拒绝原假设,否则,接受原假设。具体的假设要看所选择的是双边假设还是单边假设(又分小于和大于)

6、二项分布总体假设检验

binom.test(x, n, p = 0.5,

alternative = c("two.sided", "less", "greater"),

conf.level = 0.95)

原假设:p=p0,p

7、Pearson 拟合优度χ2检验

chisq.test(x, y = NULL, correct = TRUE,

p = rep(1/length(x), length(x)), rescale.p = FALSE,

simulate.p.value = FALSE, B = 2000)

原假设H0:X符合F分布。

p-值小于某个显著性水平,则表示拒绝原假设,否则接受原假设。

8、Fisher精确的独立检验:

fisher.test(x, y = NULL, workspace = 200000, hybrid = FALSE,

control = list(), or = 1, alternative = "two.sided",

http://conf.int = TRUE, conf.level = 0.95)

原假设:X,Y相关。

9、McNemar检验:

mcnemar.test(x, y = NULL, correct = TRUE)

原假设:两组数据的频数没有区别。

10、秩相关检验

cor.test(x, y,

alternative = c("two.sided", "less", "greater"),

method = "spearman", conf.level = 0.95, ...)

原假设:x,y相关.

11、Wilcoxon秩检验

wilcox.test(x, y = NULL,

alternative = c("two.sided", "less", "greater"),

mu = 0, paired = FALSE, exact = NULL, correct = TRUE,

http://conf.int = FALSE, conf.level = 0.95, ...)

原假设:中位数大于,小于,不等于mu.

样本量较小(n<30),且总体方差未知时,使用T检验。T检验通过比较不同数据的均值,研究两组数据之间是否存在差异。大样本时用Z检验,但当样本量加大时,T分布与正态分布基本没有区别,因此大样本时也可直接使用T检验。

T检验的分类:

解:按题意,需检验

H0: μ ≤ 225 H1: μ > 225

此问题属于单边检验问题,可以使用R语言t.test

可见P值为0.257 >0.05 ,不能拒绝原假设。接受H0,即平均寿命不大于225小时。

解1:根据题意,需要假设

H 0 :μ 1 ≥ μ 2

H 1 :μ 1 < μ 2

因为数据是成对出现的,所以采用配对样本t检验更准确。所谓配对t检验就是Z i =X i -Y i ,再对Z进行单样本均值检验。

可见P值 <0.05,拒绝原假设,接受备择假设,即新的操作能够提高得率。

独立样本t检验需要检验其适用条件,主要是指方差齐性,其他条件:样本独立性一般数据可以保障。t检验对样本正态性具有一定耐受性。

方差齐性可以用car包leveneTest函数检验:

其中,y是两组样本组成的数据,group是两组样本的分组情况。方差齐性检验之后,才可进行独立样本t检验。

解:方差齐性检验:

结果显示,P=0.5505>0.05。说明方差齐性。

独立样本t检验:

结果显示P=0.5632>0.05,不拒绝原假设,说明两者没有区别。

解:先进行方差齐性检验

因为Pr=0.04343<0.05,拒绝原假设,即方差不齐。此时设定var.equal=FALSE,表示方差不齐,默认是TRUE,方差齐性。可采用t’检验、变量变换或秩和检验等方法。

因为p-value = 0.04121<0.05,拒绝原假设,即这种饲料含铁量在两地间有显著差异。

T检验使用起来很方便,但经常误用的情况包括:

(1)不考虑数据的正态性,只要是两组比较就直接使用t检验(如果不符合正态性,就要采用Wilcoxon检验);

解决方法:对总体正态检验,或者样本数量>=30

(2)将t检验用于多组实验设计中的两两比较,增加假阳性错误(此时应该使用ANOVA);

解决方法:使用F检验

(3)不考虑资料是否独立,采用独立资料进行t检验分析。

解决方法:检验样本之间的相关性,保证样本的独立性

R语言做单位根检验的两个方法:

1、用fUnitRoots包中的UnitrootTests()和adfTest()。

2、用tseries包中的adf.test()和pp.test()。

用法都基本类似,可以看一下help的example。

R语言

R是用于统计分析、绘图的语言和操作环境。R是属于GNU系统的一个自由、免费、源代码开放的软件,它是一个用于统计计算和统计制图的优秀工具。

R是统计领域广泛使用的诞生于1980年左右的S语言的一个分支。可以认为R是S语言的一种实现。而S语言是由AT&T贝尔实验室开发的一种用来进行数据探索、统计分析和作图的解释型语言。

R语言的功能

R是一套完整的数据处理、计算和制图软件系统。其功能包括:数据存储和处理系统数组运算工具(其向量、矩阵运算方面功能尤其强大)完整连贯的统计分析工具优秀的统计制图功能简便而强大的编程语言:可操纵数据的输入和输出,可实现分支、循环,用户可自定义功能。

单位根检验

单位根检验是指检验序列中是否存在单位根,因为存在单位根就是非平稳时间序列了。单位根就是指单位根过程,可以证明,序列中存在单位根过程就不平稳,会使回归分析中存在伪回归。

单位根检验是随机过程的问题。定义随机序列{x_t},t=1,2,…是一单位根过程,若x_t=ρx_t-1+ε,t=1,2…其中ρ=1,{ε}为一平稳序列(白噪声),且E[ε]=0,V(ε)=σ<∞,Cov(ε,ε)=μ<∞这里τ=1,2…。特别地,若{ε}是独立同分布的,且E[ε]=0,V(ε)=σ<∞,则上式就变成一个随机游走序列,因此随机游走序列是一种最简单的单位根过程。