如何将LME4输出提取为LaTeX表格?

3

我通常使用modelsummary()stargazer()在R中提取表格转换成LaTeX格式。然而,它们似乎不能与lme4一起使用。有没有人知道一种方法将这个可重复的示例提取为漂亮的LaTeX表格?

这是我的模型:

df <- tibble(
      y = rnorm(100000),
      x1 = rnorm(100000),
      x2 = rnorm(100000),
      school =sample.int(300,size=100000,replace=TRUE)-1,
      classes =sample.int(100,size=100000,replace=TRUE)-1
      )
    
    df$school = as.factor(df$school)
    df$classes = as.factor(df$classes)
    
    library(lme4)
    model1 <- lmer(y~ x1 + x2 +  
                  (x1 + x2 |classes) +
                  (x1 + x2 |school), data=df)
2个回答

2

从版本0.6.4开始(现在已在CRAN上发布),modelsummary直接支持lme4::lmer模型。您只需更新软件包并重试即可。

update.packages("modelsummary")

library(lme4)
library(modelsummary)

N <- 1000
df <- data.frame(
      y = rnorm(N),
      x1 = rnorm(N),
      x2 = rnorm(N),
      school =sample.int(300,size=N,replace=TRUE)-1,
      classes =sample.int(100,size=,replace=TRUE)-1)
    
df$school = as.factor(df$school)
df$classes = as.factor(df$classes)
    
model1 <- lmer(y~ x1 + x2 +  
              (x1 + x2 |classes) +
              (x1 + x2 |school), data=df)

modelsummary(model1, "markdown")

|            |  Model 1  |
|:-----------|:---------:|
|(Intercept) |   0.009   |
|            |  (0.036)  |
|x1          |  -0.037   |
|            |  (0.032)  |
|x2          |   0.042   |
|            |  (0.033)  |
|Num.Obs.    |   1000    |
|R2 Marg.    |   0.003   |
|R2 Cond.    |           |
|AIC         |  2858.0   |
|BIC         |  2936.6   |
|Log.Lik.    | -1413.013 |

感谢您关于modelsummary的更新!您对于这个相关案例有什么建议吗?(链接:https://dev59.com/Tr_pa4cB1Zd3GeqP_Aos) - mavericks

1

有一个名为的包可以实现此功能。

library(texreg)
texreg(model1)

或者,您可以使用tab_model()并将html输出转换为latex(未经测试)。

library(sjPlot)
model_html <- tab_model(model1)

library(rrtable)
HTMLcode2latex(model_html$page.content)

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