如何运行一个使用第三型误差并查看成对比较的双向方差分析?

5

我有一个数据集,想比较物种和栖息地对家域大小的影响-同时使用类型III错误和物种和栖息地内的成对比较。
以下是数据的子集:

species<- c("a","b","c","c","b","c","b","b","a","b","c","c","a","a","b","b","a","a","b","c")
    habitat<-  c("x","x","x","y","y","y","x","x","y","z","y","y","z","z","x","x","y","y","z","z")
    homerange<-c(6,5,7,8,9,4,3,5,6,9,3,6,6,7,8,9,5,6,7,8)
    data1<-data.frame(cbind(species, habitat, homerange))
    data1$homerange<-as.numeric(as.character(data1$homerange))    

目前我正在将数据分成三个物种,然后针对每个物种单独运行ANOVA,但我认为通过一个ANOVA同时询问物种和栖息地更有意义。以下是我为一个物种运行的ANOVA示例:

data.species.a<-subset(data1, species=="a")
fit<-aov(homerange ~ habitat, data=data.species.a)
summary(fit)
TukeyHSD(fit)

aov()似乎使用I型错误……我认为这不合适;此外,我认为Tukey的测试可能过于保守,用于成对比较。有人能帮助我找到一种方法,使我能够运行一个考虑物种和栖息地对家域影响的ANOVA分析,同时考虑III型误差,并允许更少保守的物种和栖息地的成对比较吗?


可能更适合在 CrossValidated 上提问。他们也回答一般的 R 问题,但这个问题还涉及建模建议。 - Christopher
我认为你的意思是III型平方和。 - Dason
我有点困惑。对于只有一个预测变量的模型,基于I、II、III SSQ的测试结果是相同的(将您的aov结果与@DWin的答案以及他的答案的一个小变体进行比较,其中您将使用Anova(...,type="II"))。您上面是不是想测试aov(homerange ~ habitat*species)?我赞同CrossValidated的建议。 - Ben Bolker
1个回答

6
你可以在'car'包中设置Anova以报告类型III平方和,然后在'agricolae'包中使用HSD.test来接受该模型对象作为输入。我认为你不能合法地使用aov(),因为数据不平衡,所以我正在使用lm()拟合。
fit<-lm(homerange ~ habitat, data=data.species.a)
require(car)
 Anova(fit, type="III")
require(agricolae)
comparison <- HSD.test(fit, "habitat", group=TRUE)

请注意,R基础包的作者们对SAS默认的III型平方和方法持不屑(甚至直接嘲讽)的态度(阅读此处了解更多细节)。'car'包中对该方法的介绍主要是为了比较而非建议在统计正确性方面使用。

为了在接受SAS标准时更加谨慎,需要添加引用的原因有:Frank Harrell在失去功率方面的评论Bill Venables在r-help上同一主题的后续评论


HSD.test 如何考虑 Anova 中选择的平方和类型?还是必须使用 SS2 或 3 运行 Anova,并使用 unbalanced = TRUE 选项进行显著性效应的 HSD.test - abc
“HSD.test”不知道你之前请求过Type-III SS,因为拟合对象是由“lm”产生的,并没有被“Anova”调用修改。这不是一个好的例子,因为在这种情况下,类型-II和类型-II SS的SS表相同,除了截距。我不确定你的问题实际上是关于什么的。你是在问代码如何工作吗?只需在控制台键入函数名称即可轻松生成该代码(但在Rstudio中,您需要在函数最后一个字母之后键入一个额外的空格,以防止它添加括号)。 - IRTFM
1
我的问题是如何让agricolae::HSD.test知道我在(高度)不平衡设计中使用的car::Anova中使用的SS类型?这是必要的吗?警告说,stats::TukeyHSD默认使用stats::aov中的SS1 多重比较。或者正确的方法是:aov或lm > Anova与aov或lm > 选择p<0.05的效果在Anova > HSD.test中选择的效果? - abc
HSD.test 不使用 Anova 的结果。 - IRTFM

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接