转自个人微信公众号【Memo_Cleon】的统计学习笔记:R笔记:单因素方差分析 | 事后两两多重比较 | 趋势方差分析。
示例来源:李康,贺佳等.医学统计学(第6版).北京:人民卫生出版社,2013.
评价某药物耐受性及安全性的I期临床实验中,将符合纳入标准的30名健康自愿者随机分为3组,每组10名,各组注射剂量分别为0.5U、1U、2U,观察49小时部分凝血活酶时间(s)。不同剂量组的部分凝血活酶时间是否不同?
很明显,剂量可以看做是研究因素,有3个水平,这种完全随机设计的资料首先考虑的就是方差分析。如果方差分析有统计学意义,我们可能还会进一步通过两两比较考察到底是那两组有统计学差异。此外,本例中分组因素为有序变量,我们可能还想知道部分凝血活酶时间是否会随着给药剂量的增加而呈现某种变化趋势,此时我们可以进行趋势检验,检验是否满足线性、二次、三次等多项式变化。对于分组变量和因变量都是分类资料的趋势检验,我们曾在[线性趋势检验]中做过介绍,当前示例是分组变量有序、结局变量为连续的资料,我们可以采用趋势方差检验,即在方差分析中采用多项式对比检验。当然,方差分析也有自己的适用条件:独立性、正态性(各水平因变量服从正态分布,准确地说应该是模型残差服从正态分布)、方差齐性(各水平的总体具有相同的方差),需要进行评估。
当前示例R操作使用了RStudio,下载地址:https://rstudio.com/products/rstudio/download/。RStudio是R语言的一种集成开发环境(IDE),可以更方便的实现R语言操作并增添了很多功能,使用前要首先安装R。
【1】数据导入。不同类型的数据载入涉及到不同的程序包,相同数据类型的导入也有不同的包,excel数据的载入可参见《为什么是R?》,SPSS数据的载入可参见《方差齐性检验》《正态分布的检验》,STATA数据的载入可参见《描述性统计分析》。本例我们使用的是RStudio,导入可以使用菜单操作
Files >> Import Dataset >> From Excel…
自动生成相应命令如下:
library(readxl)
fdata <- read_excel("D:/Temp/fdata.xlsx")
【2】单因素方差分析。R中方差分析有两类方法,一种是采用直接使用方差分析,另外一种是采用线性回归模型。
方差分析的函数比较经典的是aov {stats}:aov(formula, data = NULL, projections = FALSE, qr = TRUE,contrasts = NULL, ...)。
本例命令清单如下:
library(stats)
Fa<-aov(time~dose,data=fdata)
summary(Fa)
结果显示可以认为3个给药剂量的部分凝血活酶时间不同(F=6.524,P=