bartlett方差齐性检验_R笔记:方差齐性检验

a667235bc6654047341e48136a38ae59.png

转自个人微信公众号【Memo_Cleon】的统计学习笔记:R笔记:方差齐性检验。

正如我们在<<正态分布与方差齐性的检验方法与SPSS操作>>一文中的介绍,方差齐性检验有F检验、Bartlett χ2检验、Levene检验、残差图。F检验和Bartlett χ2检验要求数据资料具有正态性,而且F检验只能检验两个总体方差是否齐同,Levence检验所分析资料可不具正态性,结果更为稳健也可以检验多个总体的方差齐性。示例依旧采用<<完全随机资料设计的方差分析>>的数据,演示方差齐性检验的Levene检验和Bartlett χ2以及F检验。

从SPSS中载入数据:在正态性检验时我们的数据导入采用的是采用函数spss.get{Hmisc},本次我们使用read.spss{foreign}read.spss(file, use.value.labels = TRUE, to.data.frame = FALSE,max.value.labels = Inf, trim.factor.names = FALSE,trim_values = TRUE, reencode = NA, use.missings = to.data.frame, sub = ".", add.undeclared.levels = c("sort", "append", "no"),duplicated.value.labels = c("append", "condense"),duplicated.value.labels.infix = "_duplicated_", ...)。

SPSS数据载入清单:

library(foreign) #载入foreign程序包

varh<-read.spss(file="D:/Temp/ANOVA.sav",to.data.frame = TRUE) #新建对象varh,赋值为SPSS文件ANOVA的数据。命令中去掉“file=”结果是一样的

【1】levene检验。leveneTest {car}:leveneTest(y, data, ...)

leveneTest(y, group, center=median, ...),Computes Levene's test for homogeneity of variance across groups.

library(car) #调用程序包car

library(carData) #载入程序包carData

leveneTest(LDL_C~Group,data=varh) #levene方差齐性检验,模型表达形式,默认以中位值进行检测

leveneTest(varh$LDL_C,varh$Group,center=mean) #leven方差齐性检验,变量表达形式,以均值进行检测

结果如下:不论是中位值还是均值,P值均>0.05,各组方差齐同。

5c8351e441638b68fc22eed1be0f2b37.png

【2】Bartlett χ2检验。

bartlett.test {stats}:bartlett.test(x,g,...)或者bartlett.test(formula,data, subset,na.action,...),Performs Bartlett's test of the null that the variances in each of the groups (samples) are the same.

ols_test_bartlett {olsrr}:ols_test_bartlett(data, ..., group_var = NULL)

,Test if k samples are from populations with equal variances.

bartlett.test {stats}的命令用法跟leveneTest {car}基本一样,有模型表达格式和变量表达格式,命令清单如下:

library(stats)

bartlett.test(varh$LDL_C,varh$Group)

bartlett.test(LDL_C~Group,data=varh)

ols_test_bartlett {olsrr}命令清单:library(olsrr)

ols_test_bartlett(varh,LDL_C,group_var=Group)

3be0fc1a4a66129b91cefa2875cb1755.png

olsrr程序包中除了bartlett.test 可以进行方差齐性的检验,程序包中的ols_test_f 、ols_test_breusch_pagan、ols_test_score函数也可以进行方差齐性的检验。

【3】F检

var.test {stats}:var.test(x, y, ratio = 1,alternative = c("two.sided", "less", "greater"), conf.level = 0.95, ...)或者var.test(formula, data, subset, na.action, ...),Performs an F test to compare the variances of two samples from normal populations.

F检验只能检测2个总体间的方差齐性,本例假设使用演示示例中的Placebo和NG2.4g两个组作为新的演示示例。library(stats) #调用foreign程序包

var.test(varh[1:30,2],varh[31:60,2]) #使用var.test函数进行方差齐性的F检验。F检验只能检测两个总体间的方差齐性,本例假设结果只有placebo组(数据1:30行)和NG2.4g组(数据31:60行)两组

var.test的另外一种格式是:

varh2<-varh[1:60,] #新建对象varh2,赋值为数据框varh的前60行。此命令仅生成含有2个组的演示数据,因为F检验只能检测两个总体间的方差齐性

var.test(LDL_C~Group,data=varh2) #使用var.test函数进行方差齐性的F检验

9c0902d7e01dc3d2823d7dc0142ca2ff.png

转自个人微信公众号【Memo_Cleon】的统计学习笔记:R笔记:方差齐性检验。

END

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值