数据准备
按下面的形式,在EXCEL中整理好数据
group | BW | SGR | CAT | SOD |
---|---|---|---|---|
1 | 4 | 1.2 | 21 | 2.2 |
1 | 5 | 1.4 | 22 | 2.3 |
1 | 6 | 1.5 | 23 | 2.5 |
2 | 14 | 2.2 | 33 | 3.5 |
2 | 15 | 2.4 | 34 | 3.6 |
2 | 16 | 2.5 | 35 | 3.7 |
T检验完整流程
T检验流程- 需要注意的是,由于T检验对正态性不敏感,在样本容量小的时候,即使数据不符合正态分布,仍然推荐使用T检验,而不是秩和检验进行分析。因此后面的R代码中,我省略了正态性检验
- 在样本量非常大的情况下,可以考虑使用Q-Q图判断正态性,只要大致呈一条直线,均认为符合正态分布,使用T检验。只有当Q-Q图非常不像一条直线时,才推荐使用秩和检验 wilcox.test()
R代码
##################################################
##### 独立样本T检验
#### 作者:Cdudu,日期:2019.1.12
#################################################
library(readxl)
library(car)
dat<-read_excel('文件名.xlsx')
#判断方差齐性
leveneTest(BW~as.factor(group), data=dat)
#T-test
t.test(BW~as.factor(group),data=dat, var.equal=T)
#方差齐时,参数var.equal设定为T,即进行Student T检验。
#方差不齐时,参数var.equal使用默认的F,则进行Welch检验
以上就是T检验的完整代码,其中:
- readxl包是用于导入EXCEL表格的,使用前请先安装该包
- car包用于方差齐性检验,使用前请先安装该包
- 在方差齐性检验和T-test的代码中,都需要用as.factor()将自变量group转化为因子型,避免运行过程中报错
结果展示
方差齐性检验结果
Pr(>F)大于0.5,则认为方差齐
Levene's Test for Homogeneity of Variance (center = median)
Df F value Pr(>F)
group 1 0.0655 0.8065
6
T检验结果
主要看p-value的值
Two Sample t-test
data: 体重 by as.factor(组别)
t = -12.916, df = 6, p-value = 1.325e-05
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
-14.86816 -10.13184
sample estimates:
mean in group 1 mean in group 2
10.35 22.85
批量操作
本文中的R代码每次只能实现一个变量的T检验,然而在实际试验中,不可能只有一个检测项目。当检测的项目较少时,可以使用这段R代码一个一个检验,但是当测定项目比较多的时候,就显得有点不够人性化了。在下一篇文章中,放出批量T检验的代码。
网友评论