问题描述
我正在尝试获取多个列标签,但是从 stargazer()
解析它时遇到问题。我试图显示在不同子样本上估计的不同模型并描述列名称中的分区。但是,它没有正确显示。
我已经检查了 Getting Stargazer Column labels to print on two or three lines? 和 Stargazer column on multiple lines with multiple models? 个问题,但它们并不是我所需要的。
PS:我的问题的动机来自从表中的 this type of model 捕获树结构。
var1<-rnorm(100)
var2<-rnorm(100)
df<-data.frame(var1,var2)
mod<-lm(var1~var2)
library(stargazer)
stargazer(mod,mod,column.labels='Gender=Male Gender=Female \\\\ & Age > 25 Age <= 25 Educ>12 Educ <=12')
结果
期望的输出
这就是我的 LaTeX 的样子。
% Table created by stargazer v.5.2.2 by Marek Hlavac,Harvard University. E-mail: hlavac at fas.harvard.edu
% Date and time: vie.,ene. 15,2021 - 13:58:54
\begin{table}[!htbp] \centering
\caption{}
\label{}
\begin{tabular}{@{\extracolsep{5pt}}lcccc}
\\[-1.8ex]\hline
\hline \\[-1.8ex]
& \multicolumn{4}{c}{\textit{Dependent variable:}} \\
\cline{2-5}
\\[-1.8ex] & \multicolumn{2}{c}{Gender$=$Male} & \multicolumn{2}{c}{Gender$=$Female} \\
\\[-1.8ex] & \multicolumn{1}{c}{Age$>$25} & \multicolumn{1}{c}{Age$<=$25} &\multicolumn{1}{c}{Educ$>$12} & \multicolumn{1}{c}{Educ$<=12$} \\
\\[-1.8ex] & (1) & (2) & (3) & (4)\\
\hline \\[-1.8ex]
var2 & 0.006 & 0.006 & 0.006 & 0.006 \\
& (0.101) & (0.101) & (0.101) & (0.101) \\
& & & & \\
Constant & $-$0.012 & $-$0.012 & $-$0.012 & $-$0.012 \\
& (0.105) & (0.105) & (0.105) & (0.105) \\
& & & & \\
\hline \\[-1.8ex]
Observations & 100 & 100 & 100 & 100 \\
R$^{2}$ & 0.00004 & 0.00004 & 0.00004 & 0.00004 \\
Adjusted R$^{2}$ & $-$0.010 & $-$0.010 & $-$0.010 & $-$0.010 \\
Residual Std. Error (df = 98) & 1.045 & 1.045 & 1.045 & 1.045 \\
F Statistic (df = 1; 98) & 0.004 & 0.004 & 0.004 & 0.004 \\
\hline
\hline \\[-1.8ex]
\textit{Note:} & \multicolumn{4}{r}{$^{*}$p$<$0.1; $^{**}$p$<$0.05; $^{***}$p$<$0.01} \\
\end{tabular}
\end{table}
这是编译后的样子。
解决方法
我不知道如何在 stargazer
中实现这一点,但是使用 modelsummary
和 kableExtra
包很容易做到(免责声明:我是 modelsummary
维护者):
library(kableExtra)
library(modelsummary)
mod<-list(
"(1)" = mod,"(2)" = mod,"(3)" = mod,"(4)" = mod
)
modelsummary(mod,output = "latex") %>%
add_header_above(c(" ","Age>25" = 1,"Age<=25" = 1,"Educ>12" = 1,"Educ<=25" = 1)) %>%
add_header_above(c(" ","Gender=Male" = 2,"Gender=Female" = 2)) %>%
add_header_above(c(" ","Dependent variable:" = 4))