[英]Assigning different coefficient names and goodness of fit statistics to different panels in modelsummary
我正在嘗試使用 R 中的模型摘要 package(感謝創建者)制作一個表格,該表格具有不同面板的不同擬合優度統計數據和名稱。 到目前為止,我一直無法做到這一點。 我在 Quarto 工作。
這是一個例子(不要介意回歸的有效性)。 我想在第一個面板而不是第二個面板中對調整后的 R 進行平方。 我還希望將系數重命名為系數映射,但這似乎沒有發生。
非常感謝您的幫助。
library(modelsummary)
gm<-tibble::tribble(~raw,~clean,~fmt,
"nobs","N",0,
"adj.r.squared","Adj. $R^2$",2)
cm <- c("qsec" = "OLS",
"fit_qsec" = "TSLS")
panels <- list(
"OLS" = list(
"(I)" = feols(mpg ~ 1 + qsec, data = mtcars),
"(II)" = feols(hp ~ 1 + qsec, data = mtcars)
),
"TSLS" = list(
"(I)" = feols(mpg ~ 1| qsec~drat,data = mtcars),
"(II)" = feols(hp ~ 1| qsec~drat,data = mtcars)
)
)
modelsummary(
panels,
shape = "rbind",
cof_map = cm,
gof_map = gm)
謝謝你的問題。
首先,您的示例中有一個錯字: cof_map
。
其次,沒有內置的方法可以在不同的面板中使用不同的 arguments,例如gof_map
。 但是,也許您可以通過使用glance_custom()
擴展機制來解決問題。 為此,您需要 github 的開發版本:
remotes::install_github("vincentarelbundock/modelsummary")
完全重新啟動R
,然后定義一個glance_custom.fixest()
,其中包括條件檢查以在滿足某些條件時刪除adj.r.squared
值。 在這里,我們檢查這是否是一個工具變量 model(底部面板):
library(fixest)
library(modelsummary)
cm <- c(
"qsec" = "OLS",
"fit_qsec" = "TSLS")
panels <- list(
"OLS" = list(
"(I)" = feols(mpg ~ 1 + qsec, data = mtcars),
"(II)" = feols(hp ~ 1 + qsec, data = mtcars)
),
"TSLS" = list(
"(I)" = feols(mpg ~ 1 | qsec ~ drat, data = mtcars),
"(II)" = feols(hp ~ 1 | qsec ~ drat, data = mtcars)
)
)
glance_custom.fixest <- function(x, ...) {
if (isTRUE(x$iv)) {
out <- data.frame("adj.r.squared" = NA)
} else {
out <- NULL
}
return(out)
}
modelsummary(
panels,
shape = "rbind",
coef_map = cm,
gof_map = c("nobs", "adj.r.squared"))
(我) | (二) | |
---|---|---|
最小二乘法 | 1.412 | -27.174 |
(0.559) | (4.946) | |
Num.Obs。 | 32 | 32 |
R2 調整。 | 0.148 | 0.485 |
台積電 | 25.190 | -188.788 |
(47.992) | (328.033) | |
Num.Obs。 | 32 | 32 |
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.