1

我正在尝试lmersjPlot::tab_model. 在我尝试获得“kr”p值以获得自由度之前,它一直有效。我已经pbkrtest安装了,可以单独使用,但是调用不成功tab_model。有谁知道我错过了什么?

我运行了一个线性混合效应模型。我可以使用生成表

tab_model(BWRTmod1b,show.stat = TRUE)

当我更改调用以获取基于 Kenward-Roger 近似自由度的 p 值时,如下所示:

tab_model(BWRTmod1b,p.val= "kr" ,show.stat = TRUE) 

我收到以下错误消息:

回合错误(attr(pv,“df.kr”,exact = TRUE)):数学函数的非数字参数

我用谷歌搜索了这个问题,我唯一发现的是一个丢失的pbkrtest包,但这里不是这种情况。我还用谷歌搜索了错误消息本身,发现当将数据框输入需要数字输入的函数时,可能会发生这种情况。我还更新了 R 并重新安装/更新了所有软件包,但这并没有帮助。

我不知道我是否以及如何解决这个问题,而且我也完全有可能遗漏了其他东西。任何提示将不胜感激。

链接到模型输出

# working
tab_model(BWRTmod1b,show.stat = TRUE)

# not working
tab_model(BWRTmod1b,p.val= "kr" ,show.stat = TRUE) 

# long term goal
tab_model(BWRTmod1b,p.val= "kr", show.df=TRUE ,show.stat = TRUE) 

我希望生成一个包含自由度的线性混合效应模型结果表。我可以根据 Wald 近似生成带有摘要的表格,但我无法获得具有自由度的 Kenward-Roger 版本。

4

1 回答 1

0

事实证明,这是lmerTestsjPlot包之间的错误/不合理的交互。可重现的例子:

library(lmerTest)
fm3 <- lmer(Reaction ~ Days + (Days|Subject), sleepstudy,
            REML=TRUE)
sjPlot::tab_model(fm3,p.val="kr")
## Error in round(attr(pv, "df.kr", exact = TRUE)) : 
## non-numeric argument to mathematical function

library(lme4)而如果你从而不是开始,同样的事情也有效library(lmerTest)。它现在应该在 sjPlot 的开发版本中得到修复

不知道这如何与REML=TRUE...相互作用

于 2019-08-09T15:13:36.070 回答