R语言—从原始数据到单因素,到组间比较,简直保姆级教程
背景介绍
R语言对于实验组之间进行单因素方差分析或者非参数检验,也是非常方便的,简单快捷,仅仅几行代码,即可快速进行组间两两比较。
软件介绍
R、RStudio
数据分析教程
(一)输入导入
1.打开我们在Excel中的数据,瞅一眼。也就是平时大家做完试验的数据,顶端第一行是各个组别的名称,下面是组里各个样品的测试数据
2.打开RStudio软件,点击File-New Project
3.选择New Directory
4.选择New Project
5.命名文件夹,选择保存路径
6.将Excel文件放在上述这个文件夹下
7.在脚本框进行提取Excel中的数据
# 提取Excel中的数据library(openxlsx)T <- read.xlsx('实验测试.xlsx',colNames = T)
8.我们使用View()函数查看一下数据
# 查看数据View(T)
(二)数据处理
9.比如我们看到里面有个数值不正确,也可以在R语言中进行更改,使用edit()函数,可以对数据进行更改
# 更改数据T1 <- edit(t)
10.因为我们的数据属于宽数据,我们需要将其转换为长数据进行处理,并查看数据
# 宽数据转换长数据T2 <- stack(T1)View(T2)
11.可以使用names()函数对数据集的列名进行重命名,并查看
# 重命名列名称names(T2) <- c('Time','Group')T2
(三)正态性检验
12.使用attach()函数将T2数据读取进R,方便调取
# 使用attach()函数将T2数据读取进R,方便调取attach(T2)
13.使用tapply()函数对数据进行正态性检测,在下方,我们可以观察到p值,如果p值大于0.05,我们则认为数据为正态性,则继续进行方差分析;如果数据不符合正态,则直接进行非参数检验分析
# 正态性检测tapply(Time,Group,shapiro.test)
(四)方差齐性检验
14.在各个组数据为正态性数据的基础上,我们继续看各个组之间的方差是否齐。如果方差齐,则继续进行组间两两比较,也就是单因素方差分析。如果组间方差不齐,则直接进行非参数检验。我们可以看到,p值小于0.05,组间方差不齐,那么该数据是应该使用非参数检验进行分析。为了继续学习单因素方差分析的整个流程,我们继续当做该数据符合正态,继续进行。
# 组间是否方差齐bartlett.test(Time~Group)
(五)组间整体显著性检验
15.在方差齐的前提下,进行组间的整体显著性检验。我们可以看到,组间还是具有显著性的。
# 查看一下组间是否具有显著性T2AOV <- aov(Time~Group,data = T2)summary(T2AOV)
(六)组间两两比较
16.组间的两两比较,通过查看右边的p值,可以发现两两的比较是否有显著性差异
# 组间两两比较TukeyHSD(T2AOV)
(七)非参数检验
17.在整体数据不符合正态分布,或者组间方差不齐的条件下,我们进行非参数检验。通过kruskal.test()查看后,我们发现,组间具有显著性差异。
# 非参数检验kruskal.test(Time~Group,data = T2)
18.因此,我们直接进行组间的两两比较。没有安装的可以先进行安装包,然后加载使用。通过查看后面标注的*,就可以发现各个组间的差异了。
# 直接进行组间的两两比较install.packages('PMCMRplus')library(PMCMRplus)compare <- bwsAllPairsTest(Time~Group,data = T2)summary(compare)
今天我们就讲这么多,明天我们继续讲,计算出了组间的差异之后,如何做一个柱状图,并且加上误差条以及显著性*,以及如何导出图,用于SCI论文中。