在 stargazer 中混合和匹配多项式模型的协变量

Mixing and matching covariates from multinom models in stargazer

我正在尝试混合和匹配一些多项式逻辑回归模型的一些系数,以显示它们如何在自己的模型中进行比较。我想要的输出是 m1 var2 的选项 B 和 C 的系数,然后是 m2var3 的选项 B 和 C 的系数,但是对于我的目的,我希望它们在两列中(例如 B 和 C),而不是并排.. 是因为元素 (Intercept) 和 Constant 可能不匹配吗?

# Fake data
var1<-sample(c('A', 'B', 'C'), replace = T, size=100)
var2<-sample(c(0,1), size=100, replace=T)
var3<-rnorm(100, mean=10, sd=2)
#Turn into a data frame
df<-data.frame(var1, var2, var3)
#make multinomial models
library(nnet)
m1<-multinom(var1~var2, data=df)
m2<-multinom(var1~var3, data=df)
m3<-multinom(var1~var2+var3, data=df)

#

summary(m1)$coefficients
summary(m2)$coefficients

#This doesn't work, but I thought it would
stargazer(m3, type="text", coef=list(summary(m1)$coefficients[,2], summary(m2)$coefficients[,2]))

我想看这样的东西。

|Covariate                   | B     | C.   |
| var2 from m1               | 0.5   | -0.2 |
| std.error for var2 from m1 | (0.1) | (0.2)|
| var3 from m2               | 0.2   | -0.4.|
| std.error for var3 from m2 | (0.3) | (0.2)|  

我的 modelsummary package 的开发版本包含一个名为 modelsummary_wide 的函数,它可以执行您想要的操作(包括:self-promotion 警报)。当它出现在 CRAN 上时,此功能应该在版本 0.6.3 中可用。在那之前,您可以从 github:

安装它
library(remotes)
install_github("vincentarelbundock/modelsummary")

完全重新启动 R 会话以确保新安装生效。然后,使用 nnet 包模拟数据并估计两个多项式回归模型:

library(nnet)
library(modelsummary)

var1 <- sample(c('A', 'B', 'C'), replace = T, size=100)
var2 <- sample(c(0,1), size=100, replace=T)
var3 <- rnorm(100, mean=10, sd=2)
var4 <- rnorm(100, mean=10, sd=2)
df1 <- data.frame(var1, var2, var3, var4)

var1 <- sample(c('A', 'B', 'C'), replace = T, size=100)
var2 <- sample(c(0,1), size=100, replace=T)
var3 <- rnorm(100, mean=10, sd=2)
df2 <- data.frame(var1, var2, var3)

models <- list(
  multinom(var1~var2+var4, data=df1),
  multinom(var1~var2+var3, data=df2)
)

最后我们使用modelsummary_wide函数绘制table:

modelsummary_wide(models, output="markdown")

|                    |B       |C       |
|:-------------------|:-------|:-------|
|Model 1 (Intercept) |-0.783  |0.580   |
|                    |(1.377) |(1.399) |
|Model 1 var2        |0.462   |-0.119  |
|                    |(0.479) |(0.501) |
|Model 1 var4        |0.033   |-0.091  |
|                    |(0.132) |(0.138) |
|Model 2 (Intercept) |0.635   |-0.032  |
|                    |(1.322) |(1.265) |
|Model 2 var2        |-0.457  |-0.125  |
|                    |(0.519) |(0.483) |
|Model 2 var3        |-0.045  |0.031   |
|                    |(0.127) |(0.120) |
|Model 1 AIC         |227.417 |        |
|Model 1 deviance    |215.417 |        |
|Model 1 edf         |6.000   |        |
|Model 1 nobs        |100     |        |
|Model 2 AIC         |228.988 |        |
|Model 2 deviance    |216.988 |        |
|Model 2 edf         |6.000   |        |
|Model 2 nobs        |100     |        |

请注意 modelsummary_wide 仍处于实验阶段。它的API(甚至函数的名称)在正式发布之前可能会有所改变。