定义及分类
在进行 t 检验之前让我们先看看它的定义:t 检验法就是在假设检验时利用 t 分布进行概率计算的检验方法。那问题来了,什么是 t 分布呢?
在概率论和统计学中,学生 t- 分布(Student's t-distribution)可简称为 t 分布,用于根据小样本来估计呈正态分布且方差未知的总体的均值。如果总体方差已知(例如在样本数量足够多时),则应该用正态分布来估计总体均值[1]。
所以我们在进行 t 检验之前,应该对数据进行正态性检验以及方差齐性检验。
t 检验可以分为单样本 t 检验和双样本 t 检验(见下图)。
单样本 t 检验
步骤及算法
单样本 t 检验步骤如下。
1. 提出假设
2. 计算 t
3. 统计推断
在R中的实现
#单样本T检验
data <- c(4.33,4.62,3.89,4.14,4.78,4.64,4.52,4.55,4.48,4.26)
shapiro.test(data) #p>0.05,符合正态分布
t.test(data,mu=4.5) #mu表示的是平均数
看看R的结果:
①正态性检验结果
> shapiro.test(data) #p>0.05,符合正态分布
Shapiro-Wilk normality test
data: data
W = 0.95054, p-value = 0.6749
② t 检验结果
> t.test(data,mu=4.5)
One Sample t-test
data: data
t = -0.93574, df = 9, p-value = 0.3738
alternative hypothesis: true mean is not equal to 4.5
95 percent confidence interval:
4.230016 4.611984
sample estimates:
mean of x
4.421
p=0.3738>0.05,所以拒绝Ho,接受HA。
方差齐的非配对的双样本 t 检验
步骤及算法
1. 提出假设
2. 计算 t
其中:
3. 统计推断
在R中的实现
#非配对两样本T检验
high<-c(134,146,106,119,124,161,107,83,113,129,97,123)
low<-c(70,118,101,85,107,132,94)
x <- c(high,low)
group <- c(rep("high",12),rep("low",7))
shapiro.test(high) #正态性检验
shapiro.test(low) #正态性检验
bartlett.test(x~group)#方差齐性检验
t.test(high,low,paired = FALSE,var.equal = T) #非配对: paired = FALSE 方差齐: var.equal = T
①方差齐性检验结果
> bartlett.test(x~group)#方差齐性检验
Bartlett test of homogeneity of variances
data: x by group
Bartlett's K-squared = 0.0066764, df = 1, p-value = 0.9349 #接近1表明方差齐
② t 检验结果
> t.test(high,low,paired = FALSE,var.equal = T)
Two Sample t-test
data: high and low
t = 1.9157, df = 17, p-value = 0.07238
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-1.942543 40.275876
sample estimates:
mean of x mean of y
120.1667 101.0000
p-value = 0.07238>0.05,所以不能否定Ho。
方差不齐的非配对的 t 检验
步骤及算法
1. 提出假设
2. 计算 t’
其中:
3. 统计推断
在R中的实现
#非配对两样本T检验
high<-c(134,146,106,119,124,161,107,83,113,129,97,123)
low<-c(70,118,101,85,107,132,94)
x <- c(high,low)
group <- c(rep("high",12),rep("low",7))
shapiro.test(high)
shapiro.test(low)
bartlett.test(x~group)#方差齐性检验
t.test(high,low,paired = FALSE,var.equal = F)
t 检验结果
> t.test(high,low,paired = FALSE,var.equal = F)
Welch Two Sample t-test
data: high and low
t = 1.9319, df = 13.016, p-value = 0.07543
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-2.263671 40.597005
sample estimates:
mean of x mean of y
120.1667 101.0000
p-value = 0.07238>0.05,所以不能否定Ho。
配对 双样本 t 检验
步骤及算法
1.提出假设
2.计算t
其中
3. 统计推断
在R中的实现
#配对两样本T检验
ds <- c(82.5,85.2,87.6,89.9,89.4,90.1,87.8,87.0,88.5,92.4)
cs <- c(91.7,94.2,93.3,97.0,96.4,91.5,97.2,96.2,98.5,95.8)
library(carData)
library(car)
leveneTest(ds,cs)
d <- ds-cs
shapiro.test(d) #方差齐性检验
t.test(ds,cs,paired = T,alternative = "two.sided",cond.lvel=0.95)
t检验结果:
> t.test(ds,cs,paired = T,alternative = "two.sided",cond.lvel=0.95)
Paired t-test
data: ds and cs
t = -7.8601, df = 9, p-value = 2.548e-05
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-9.1949 -5.0851
sample estimates:
mean of the differences
-7.14
p-value = 2.548e-05 < 0.01,所以否定Ho,接受HA。
参考文献:
[1].学生 t - 分布(Wikipedia)