R统计2_t检验
概念
t检验,亦称student t检验(Student’s t test),主要用于样本含量较小(例如n < 30),总体标准差σ未知的正态分布。 t检验是用t分布理论来推论差异发生的概率,从而比较两个平均数的差异是否显著。
适用条件
t检验的前提是要求样本服从正态分布或近似正态分布,不然可以利用一些变换(取对数、开根号、倒数等等)试图将其转化为服从正态分布是数据,如若还是不满足正态分布,只能利用非参数检验方法。不过当样本量大于30的时候,可以认为数据近似正态分布。
t检验最常见的四个用途
- 单样本均值检验(One-sample t-test)
用于检验 总体方差未知、正态数据或近似正态的 单样本的均值 是否与 已知的总体均值相等 - 两独立样本均值检验(Independent two-sample t-test)
用于检验 两对独立的 正态数据或近似正态的 样本的均值 是否相等,这里可根据总体方差是否相等分类讨论 - 配对样本均值检验(Dependent t-test for paired samples)
用于检验 一对配对样本的均值的差 是否等于某一个值 - 回归系数的显著性检验(t-test for regression coefficient significance)
用于检验 回归模型的解释变量对被解释变量是否有显著影响
t检验与R语言
1.六种t检验方法
- 结果解释:t检验的零假设为两组数据均值相等,p-valuep>0.5,不拒绝H0,服从正态分布。
p-valuep<0.5,拒绝H0,不服从正态分布。
- 不同的t检验方法,结果不同时,可以少数服从多数,或者选择权威的方法
- t.test(x, y = NULL,
alternative = c(“two.sided”, “less”, “greater”),
mu = 0, paired = FALSE, var.equal = FALSE,
conf.level = 0.95, …)
y可省,双侧检验alternative = “two.sided”,配对则paired = T,方差齐则var.equal = T,执行区间conf.level = 0.9。
> d1 <- sample(1:200,50)
> shapiro.test(d1) #p<0.5,拒绝H0,不服从正态分布 方法一
Shapiro-Wilk normality test
data: d1
W = 0.93832, p-value = 0.01157
> library(nortest) #不同的t检验方法,可以少数服从多数,或者选择权威的方法
> lillie.test(d1) #方法二
Lilliefors (Kolmogorov-Smirnov) normality test
data: d1
D = 0.099835, p-value = 0.2438
> ad.test(d1) #方法三
Anderson-Darling normality test
data: d1
A = 0.82317, p-value = 0.0312
> cvm.test(d1) #方法四
Cramer-von Mises normality test
data: d1
W = 0.1133, p-value = 0.0714
> pearson.test(d1) #方法五
Pearson chi-square normality test
data: d1
P = 5.6, p-value = 0.5872
> sf.test(d1) #方法六
Shapiro-Francia normality test
data: d1
W = 0.95149, p-value = 0.03981
t.test(x, y = NULL,
alternative = c("two.sided", "less", "greater"),
mu = 0, paired = FALSE, var.equal = FALSE,
conf.level = 0.95, ...)
# y可省,双侧检验alternative = "two.sided",配对则paired = T,方差齐则var.equal = T,执行区间conf.level = 0.9
2.单样本均值检验(One-sample t-test)
- 目的:检验单样本的均值是否和已知总体的均值相等。
- 要求:
- 总体方差未知,否则就可以利用
检验(也叫
检验,就是正态检验)
- 正态数据或近似正态
- H0:样本均值与总体均值相等
> d3 <- rnorm(200,3,5) #rnorm的参数分别为数据量,均值,标准差
> d4 <- rnorm(200,4,5)
> shapiro.test(d3) #p值大于0.5 服从正态分布
Shapiro-Wilk normality test
data: d3
W = 0.9927, p-value = 0.4221
> shapiro.test(d4)
Shapiro-Wilk normality test
data: d4
W = 0.99524, p-value = 0.7847
> t.test(d3,mu = 3.2) #样本均数与总体均数的比较,d3为样本均数,mu为总体均数
One Sample t-test
data: d3
t = -0.67298, df = 199, p-value = 0.5017
alternative hypothesis: true mean is not equal to 3.2
95 percent confidence interval:
2.251942 3.665607
sample estimates:
mean of x
2.958775
#p>0.5 表示没有差异
3.两独立样本均值检验(Independent two-sample t-test)
- 目的:检验两独立样本的均值是否相等。
- 要求:两样本独立,服从正态分布或近似正态,方差齐。
- H0:要检验两总体均值相等(双侧检验,或者单侧检验,一个大于或小于另一个)
- 方法:先用var.test(d3,d4)检测两个样本是否方差齐, p-value >0.5则方差齐,var.equal值需通过var.test()方差齐性检验得出,p>0.5则方差齐则var.equal=T,反之亦然,默认ar.equal=F。若var.equal = F,默认的t.test就是改良的t.test
> var.test(d3,d4) #方差齐性检验,p>0.5则方差齐
F test to compare two variances
data: d3 and d4
F = 1.0861, num df = 199, denom df = 199, p-value =
0.5607
alternative hypothesis: true ratio of variances is not equal to 1
95 percent confidence interval:
0.8219591 1.4351700
sample estimates:
ratio of variances
1.086117
> t.test(d3,d4,mu = 3.2,var.equal = T) #p<0.5 有显著性差异
Two Sample t-test
data: d3 and d4
t = -8.7659, df = 398, p-value < 2.2e-16
alternative hypothesis: true difference in means is not equal to 3.2
95 percent confidence interval:
-2.1311882 -0.1779695
sample estimates:
mean of x mean of y
2.958775 4.113353
3.配对样本均值检验(Dependent t-test for paired samples)
- 目的:用于检验 一对配对样本的均值的差 是否等于某一个值
- 要求:
- 总体方差相等
- 正态数据或近似正态
- H0: 配对样本的均值差值为0(双侧检验,或者单侧检验)
> t.test(d3,d4,paired = T) #p-value = 0.02885 <0.5 有统计学差异
Paired t-test
data: d3 and d4
t = -2.2016, df = 199, p-value = 0.02885
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval: #95%置信区间
-2.1887424 -0.1204153
sample estimates:
mean of the differences #均值
-1.154579