置换检验--lmPerm 包(简单回归和多项式回归检验、单因素方差分析和协方差分析、双因素方差分析)


1 lmPerm 包的置换检验

lmPerm包可做线性模型的置换检验。比如lmp()aovp()函数即lm()aov()函数的修改版,能够进行置换检验,而非正态理论检验。lmp()aovp()函数的参数与lm()aov()函数类似,只额外添加了perm=参数。perm=选项的可选值有ExactProbSPRExact根据所有可能的排列组合生成精确检验。Prob从所有可能的排列中不断抽样,直至估计的标准差在估计的p0.1之下,判停准则由可选的Ca参数控制。SPR使用贯序概率比检验来判断何时停止抽样。注意,若观测数大于10perm="Exact"将自动默认转为perm="Prob",因为精确检验只适用于小样本问题。

1.1 简单回归和多项式回归

1简单线性回归的置换检验

library(lmPerm)

set.seed(1234)

fit <- lmp(weight~height, data=women, perm="Prob")

summary(fit)

 

结果分析:p=2e-1600.001之间,有三颗星星,表示效果最好。

(2)多项式回归的置换检验

library(lmPerm)

set.seed(1234)

fit <- lmp(weight~height + I(height^2), data=women, perm="Prob")

summary(fit)

 

结果分析:p=2e-16,并且关于height的二次方的p值也在00.001之间,有三颗星星,表示效果最好,与上面简单线性回归的置换检验效果差不多。

1.2 多元回归

多元回归被用来通过美国50个州的人口数、文盲率、收入水平和结霜天数预测犯罪率。将lmp()函数应用到此问题

library(lmPerm)

set.seed(1234)

states <- as.data.frame(state.x77)

fit <- lmp(Murder~Population + Illiteracy+Income+Frost, data=states, perm="Prob")

summary(fit)

 

结果分析:谋杀率Murder与文盲率Illiteracy之间的关系紧密,因为后面有三颗星星。

1.3 单因素方差分析和协方差分析

1单因素方差分析的置换检验

library(lmPerm)

library(multcomp)

set.seed(1234)

fit <- aovp(response~trt, data=cholesterol, perm="Prob")

anova(fit)

 

结果分析:各种疗法对降低胆固醇的影响的效果不全相同。

2)单因素协方差分析的置换检验

问题:当控制妊娠期时间相同时,观测四种药物剂量对鼠崽体重的影响。

library(lmPerm)

set.seed(1234)

fit <- aovp(weight ~ gesttime + dose, data=litter, perm="Prob")

anova(fit)

 

结果分析:依据p值可知,当控制妊娠期时间gesttime相同时,四种药物剂量dose对鼠崽的体重weight影响不相同。

1.4 双因素方差分析

维生素C对豚鼠牙齿生长的影响为例,该实验两个可操作的因子是剂量dose(三水平)和喂食方式supp(两水平)。10只豚鼠分别被分配到每种处理组合中,形成一个3×2的析因实验设计。

set.seed(1234)

fit <- aovp(len~supp*dose, data=ToothGrowth, perm="Prob")

anova(fit)

 

结果分析:在0.05的显著性水平下,三种效应都不等于0;在0.01的水平下(0.010.05之间只有一颗星),只有主效应显著。

置换检验点评:基于正态理论的检验与上面置换检验的结果非常接近。置换检验真正发挥功用的地方是处理非正态数据(如分布偏倚很大)、存在离群点、样本很小或无法做参数检验等情况。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM