调整 sjPlot 中 r2 的名称:tab_model

adjust name of r2 in sjPlot: tab_model

虽然我认为这样做不是最佳做法,但我希望将一个线性模型和一个线性混合效应模型 table 放在一起。我使用 sjPlot::tab_model。 问题出现在 r2 上。在 lm 中,它计算 r2 和调整后的 r2。但在 lmer 中,它计算边际和条件 r2。 Tab_model 为第 r2 行打印第一个分配模型中使用的指标名称。 我认为最好是创建一个新行并分别为每个模型赋予 r2 正确的名称,但同时更改 tab_model 为 r2 写入的名称将以某种方式解决问题。

这是一个可重现的例子,因为它只是出于布局原因,它根本没有意义:

library("sjPlot")
library("lme4")

lm1 <- lm(mpg ~ cyl, mtcars)
lmer2 <- lmer(mpg ~ hp + (1|gear), mtcars)


tab_model(lm1, lmer2,
          show.aic = T,
          show.fstat = T,
          show.r2 = T)

这完全是 hack,但您可以只分配 sjTable 输出,然后使用 base::gsub 手动更改调整后的词:

tab <- tab_model(lm1, lmer2,
                 show.aic = T,
                 show.fstat = T,
                 show.r2 = T)
tab$page.complete <- gsub("adjusted","adjusted or conditional",
                          tab$page.complete)
tab