4

我正在尝试对死亡率数据进行 Tukey 测试,我想测试死亡率是否受铜量(在单向方差分析中)以及铜和温度的组合(在双向方差分析中)的影响. 这些是我的公式:

lm2<-lm(Mortality~Cu) 
anova(lm2) 
TukeyHSD(aov(Mortality~Cu)) 

lm2<-lm(Mortality~Cu+Temp+Cu:Temp) 
anova(lm2) 
TukeyHSD(aov(Mortality~Cu+Temp+Cu:Temp)) 

方差分析没有问题,但对于 Tukey 的,我收到以下错误消息:

    Error in TukeyHSD.aov(aov(Mortality ~ Cu + Temp + Cu:Temp)) : 
      no factors in the fitted model 
    In addition: Warning messages: 
    1: In replications(paste("~", xx), data = mf) : non-factors ignored: Cu 
    2: In replications(paste("~", xx), data = mf) : non-factors ignored: Temp 
    3: In replications(paste("~", xx), data = mf) : 
      non-factors ignored: Cu, Temp 

我在其他帖子上读到应该在某个地方存在一个因素,但我所有的数据都是数字!我很困惑,不知道下一步该怎么做。

在此先感谢您的帮助!

伦迪尔

4

1 回答 1

6

TukeyHSD仅适用于分类变量,因此它正在寻找公式中的因素。离散胸围的值是否Cu只是编码为数值?如果是这样,那么使用

fCu<-factor(Cu)
TukeyHSD(aov(Mortality~fCu)) 

还是观察是连续的?然后你必须把它分成几个区间才能把它变成一个因素。你可以做

fCu<-cut(Cu, breaks=4)
TukeyHSD(aov(Mortality~fCu)) 

如果等式右侧只有一部分变量是因子,则必须在 的which参数中明确指定这些变量TukeyHSD。因此,如果您使用分类fCu并且Temp是连续数值变量,则可以

TukeyHSD(aov(Mortality~fCu+Temp), which="fCu") 

虽然它仍然会发出关于其他列的警告,所以我不确定如何解释结果

于 2014-05-09T18:12:03.417 回答