【问题标题】:"Contrast Error" message with lsmeans Tukey Test on GLMGLM 上 lsmeans Tukey 测试的“对比度错误”消息
【发布时间】:2018-04-14 05:18:55
【问题描述】:

我定义了一个广义线性模型如下:

glm(formula = ParticleCount ~ ParticlePresent + AlgaePresent + 
ParticleTypeSize + ParticlePresent:ParticleTypeSize + AlgaePresent:ParticleTypeSize, 
family = poisson(link = "log"), data = PCB)

我有以下重要的互动

                                 Df  Deviance  AIC  LRT Pr(>Chi)   
<none>                               666.94  1013.8                  
ParticlePresent:ParticleTypeSize  6  680.59  1015.4 13.649 0.033818 * 
AlgaePresent:ParticleTypeSize     6  687.26  1022.1 20.320 0.002428 **

我正在尝试使用 lsmeans 包进行事后测试 (Tukey) 以比较 ParticleTypeSize 的交互。但是,我一继续就会收到以下消息:

library(lsmeans)
leastsquare=lsmeans(glm.particle3,~ParticleTypeSize,adjust ="tukey")

Error in `contrasts<-`(`*tmp*`, value = contrasts.arg[[nn]]) : 
  contrasts apply only to factors

我通过应用检查了 ParticleTypeSize 是否是一个有效因素:

 l<-sapply(PCB,function(x)is.factor(x))
 l
      Sample     AlgaePresent  ParticlePresent ParticleTypeSize 
        TRUE            FALSE            FALSE             TRUE 
   ParticleCount 
       FALSE 

我很困惑,不确定如何纠正此错误消息。任何帮助将不胜感激!

【问题讨论】:

    标签: glm lsmeans posthoc tukey


    【解决方案1】:

    当您指定的变量不是一个因素时,就会发生该错误。您测试并发现它是,所以这是一个谜,我只能猜测数据在您拟合模型后发生了变化。因此,请尝试使用当前数据集重新拟合模型。

    说了这么多,我怀疑你想做什么。首先,您有 ParticleTypeSize 与其他两个预测变量交互,这意味着可能建议查看该因素的边际均值 (lsmeans)。存在相互作用的事实意味着这些均值的模式会根据其他变量的值而变化。

    其次,AlgaePresentParticlePresent 真的 是数字变量吗?从他们的名字来看,他们似乎应该是因素。如果它们确实是指标(0 和 1),那没关系,但如果您使用像 lsmeans 这样的函数,其中因子和协变量的处理方式截然不同。

    顺便说一句,lsmeans 包已被弃用,其继任者 emmeans 包正在发生新的发展。

    【讨论】:

    • 感谢您的评论。我设法通过将 AlgaePresent 和 ParticlePresent 视为因素来将其拟合到模型中,如下所示: PCB$AlgaePresent
    • 嗯。我想我什至不知道可以使用逻辑变量作为预测变量,并且凭借这种洞察力,我可以重现您遇到的错误(使用不同的示例)。现在我知道了,大概我可以解决它。所以在一个月左右的时间里,emmeans 的新更新将会问世,它可以处理逻辑预测器。
    • 好的,这是一个非常容易解决的问题。现在支持逻辑预测器,并且像因子一样工作。如果您现在需要,请转至github.com/rvlenth/emmeans
    • 非常感谢!感谢您的快速反应-
    猜你喜欢
    • 1970-01-01
    • 2014-10-06
    • 2020-07-06
    • 2016-04-12
    • 2015-01-08
    • 2018-07-14
    • 2016-12-22
    • 1970-01-01
    • 2018-10-26
    相关资源
    最近更新 更多