朱zhu
2023/03/17阅读:17主题:橙心
T检验
R 医学统计学--T 检验
医学统计学——T 检验[1]
基本概念
T 检验,又称为学生 t 检验(Student's t-test),主要适用于样本含量较小(例如 n < 30),总体标准差 σ 未知的正态分布。
主要应用
-
单样本检验:检验一个正态分布的总体的均值是否在满足零假设的值之内,例如检验一群军校男生的身高的平均是否符合全国标准的 170 公分界线。 -
独立样本 t 检验(双样本):其零假设为两个正态分布的总体的均值之差为某实数,例如检验二群人之平均身高是否相等。若两总体的方差是相等的情况下(同质方差),自由度为两样本数相加再减二;若为异方差(总体方差不相等),自由度则为 Welch 自由度,此情况下有时被称为 Welch 检验。 -
配对样本 t 检验(成对样本 t 检验):检验自同一总体抽出的成对样本间差异是否为零。例如,检测一位病人接受治疗前和治疗后的肿瘤尺寸大小。若治疗是有效的,我们可以推定多数病人接受治疗后,肿瘤尺寸将缩小。 -
检验一回归模型的偏回归系数是否显著不为零,即检验解释变量 X 是否存在对被解释变量 Y 的解释能力,其检验统计量称之为 t-比例(t-ratio)
单样本 T 检验
满足条件
-
观测变量为连续变量; -
观测值相互独立; -
观测变量接近正态分布。
我们选择的数据为产妇新生儿体重的数据(birthwt),研究者拟分析样本均值与总体均值是否不同,即判断新生儿体重与总体新生儿体重均值 3000g 之间是否有差异。
##T检验
library(dplyr)
library(MASS)
str(birthwt)##查看数据结构
有 189 个观察单位,10 个变量,其中 bwt 为新生儿出生体重,也是我们要检验的变量,bwt 满足连续性数值,数据独立的条件。
第一步 检验数据是否符合正态分布
> ##检验数据是否符合正态分布
> shapiro.test(birthwt$bwt)
Shapiro-Wilk normality test
data: birthwt$bwt
W = 0.99244, p-value = 0.4353
P>0.05,数据满足正态分布的要求
图示法

第二步 差异性检验
> #独立单样本t检验
> t.test(birthwt$bwt,mu=3000)#已知总体均数为3000的单样本t检验
One Sample t-test
data: birthwt$bwt
t = -1.0447, df = 188, p-value = 0.2975
alternative hypothesis: true mean is not equal to 3000
95 percent confidence interval:
2839.952 3049.222
sample estimates:
mean of x
2944.587
本研究采用单样本 t 检验判断研究新生儿体重均值与总体新生儿体重均值是否有差异。研究数据接近正态分布。单样本 t 检验结果提示,研究新生儿体重均值与总体新生儿体重均值的差异无统计学意义(t=-1.04,P=0.298)。
两独立样本 T 检验
研究吸烟组新生儿体重与未吸烟组新生儿体重两组之间的差异,smoke==0 表示未吸烟,smoke==1 表示吸烟。
满足条件
-
数据为连续型数据; -
各组数据均为正态分布; -
各组数据满足方差齐性; -
观测数据满足独立性。
第一步 检验数据是否符合正态分布
> #独立两样本t检验
> ##检验两样本正态性
> group1 <- birthwt$bwt[birthwt$smoke==0]#未吸烟组命名为group1
> group2 <- birthwt$bwt[birthwt$smoke==1]#吸烟组命名为group2
> shapiro.test(group1)
Shapiro-Wilk normality test
data: group1
W = 0.98694, p-value = 0.3337
> shapiro.test(group2)
Shapiro-Wilk normality test
data: group2
W = 0.98296, p-value = 0.4195
按吸烟分组检验正态性,未吸烟组(smoke==0)的新生儿体重数据满足正态分布条件,P=0.334;吸烟组(smoke==1)的新生儿体重数据满足正态分布条件,P=0.420。
第二步 检验数据是否满足方差齐性
> ##检验两样本方差齐性
> var.test(bwt ~ smoke,data = birthwt)
F test to compare two variances
data: bwt by smoke
F = 1.3019, num df = 114, denom df = 73, p-value = 0.2254
alternative hypothesis: true ratio of variances is not equal to 1
95 percent confidence interval:
0.8486407 1.9589574
sample estimates:
ratio of variances
1.301927
结果显示,P=0.225>0.05,表示数据满足方差齐性;
第三步 两组数据差异性分析
> t.test(bwt ~ smoke,var.equal=T,data = birthwt)#数据不满足方差齐性时——var.equal = F
Two Sample t-test
data: bwt by smoke
t = 2.6529, df = 187, p-value = 0.008667
alternative hypothesis: true difference in means between group 0 and group 1 is not equal to 0
95 percent confidence interval:
72.75612 494.79735
sample estimates:
mean in group 0 mean in group 1
3055.696 2771.919
关于某一组或两组数据不满足方差齐性时,应该怎么办??????
在进行两样本 T 检验时,方差齐性是一个重要的假设,但是这个假设不是必须的。具体来说,两组数据的方差齐性指的是这两组数据的方差是相等的。
如果两组数据的方差是相等的,那么可以使用方差齐性的两样本 T 检验;否则,应该使用非方差齐性的两样本 T 检验(俗称t`检验)。这是因为方差齐性对 T 检验的结果有影响,如果方差不相等,那么使用方差齐性的 T 检验可能会导致假阳性或假阴性的结果。
如果两组数据的样本量很大,那么方差齐性不是很重要,因为中心极限定理可以保证 T 统计量的正态分布。但是如果样本量比较小,那么方差齐性假设就变得更为重要,需要在检验前进行方差齐性检验。
配对样本 T 检验
满足条件
-
观测变量为连续变量。 -
分组变量包含两个分类、且相关(配对)。 -
两个相关(配对)组别间观测变量的差值近似服从正态分布。
某研究者拟分析某种药物是否可以降低低密度脂蛋白胆固醇(LDL)水平。他招募了 20 位研究对象,测量基线低密度脂蛋白胆固醇水平,记录为 LDL1,然后对患者进行 4 周的药物干预,再次测量低密度脂蛋白胆固醇水平,记录为 LDL2
数据如下
> DLD<- readxl::read_xlsx( "TDLD.xlsx" )
> DLD
# A tibble: 20 x 2
LDL1 LDL2
<dbl> <dbl>
1 6.05 4.75
2 5.12 3.25
3 7.03 5.15
4 6.18 4.51
5 5.19 3.69
6 5.26 3.85
7 5.1 3.48
8 5.2 4.02
9 7.08 5.36
10 6.11 4.91
11 5.17 3.76
12 5.24 3.37
13 7.02 5.25
14 5.11 4.03
15 6.14 4.28
16 5.17 3.79
17 5.14 3.9
18 6.22 4.65
19 5.15 3.5
20 5.21 4.16
第一步 检验两配对数据差值是否符合正态分布
> ##检验两配对样本差值是否满足正态性检验
> shapiro.test(DLD$LDL1-DLD$LDL2)
Shapiro-Wilk normality test
data: DLD$LDL1 - DLD$LDL2
W = 0.93472, p-value = 0.1902
P=0.190>0.05,表明两配对样本差值满足正态分布
第二步 两配对数据差异性检验(以下列出两种检验方法)
> ##第一种方法
> t.test(DLD$LDL1-DLD$LDL2,mu=0)
One Sample t-test
data: DLD$LDL1 - DLD$LDL2
t = 24.497, df = 19, p-value = 7.75e-16
alternative hypothesis: true mean is not equal to 0
95 percent confidence interval:
1.382359 1.640641
sample estimates:
mean of x
1.5115
> ##第二种方法
> t.test(DLD$LDL1,DLD$LDL2,paired = T)
Paired t-test
data: DLD$LDL1 and DLD$LDL2
t = 24.497, df = 19, p-value = 7.75e-16
alternative hypothesis: true difference in means is not equal to 0
95 percent confidence interval:
1.382359 1.640641
sample estimates:
mean of the differences
1.5115
药物治疗前后 LDL 的差值为 1.51(95% CI:1.38-1.64)。治疗前 LDL 平均水平高于治疗后平均水平,差异有统计学意义(t=24.50,P<0.001)。
更多数据分析可视化教程请关注微信公众号

参考资料
《医学统计学》[第五版]: 孙振球,徐勇勇,人民卫生出版社
作者介绍