texreg
aracılığıyla sütunları gruplandırılmış bir tablo oluşturmak istiyorum. Yalnızca satırları (groups
) gruplandırılmış seçenekleri görebilirim. İşteTexicond çıkışıma multicolumns ekleme
set.seed(01349)
DF <- data.frame(y = rnorm(100), x1A = rnorm(100), x2A = rnorm(100),
x1B = rnorm(100), x2B = rnorm(100))
regs <- lapply(paste0("x", 1:2, c("A", "A", "B", "B")), function(x)
lm(paste0("y ~ ", x), data = DF))
Ben düz texreg
ile alabilirsiniz olduğunca yakın: Burada
texreg(regs, custom.coef.names = c("Intercept", rep("x", 4)),
custom.model.names = c("1", "2", "1", "2"))
LaTeX çıkışı ile:
\begin{table}
\begin{center}
\begin{tabular}{l c c c c }
\hline
& 1 & 2 & 1 & 2 \\
\hline
Intercept & $-0.13$ & $-0.13$ & $-0.11$ & $-0.11$ \\
& $(0.12)$ & $(0.12)$ & $(0.12)$ & $(0.12)$ \\
x & $0.02$ & $0.07$ & $0.13$ & $-0.11$ \\
& $(0.13)$ & $(0.12)$ & $(0.12)$ & $(0.13)$ \\
\hline
R$^2$ & 0.00 & 0.00 & 0.01 & 0.01 \\
Adj. R$^2$ & -0.01 & -0.01 & 0.00 & -0.00 \\
Num. obs. & 100 & 100 & 100 & 100 \\
RMSE & 1.18 & 1.17 & 1.17 & 1.17 \\
\hline
\multicolumn{5}{l}{\scriptsize{$^{***}p<0.001$, $^{**}p<0.01$, $^*p<0.05$}}
\end{tabular}
\caption{Statistical models}
\label{table:coefficients}
\end{center}
\end{table}
Fazladan tercih ediyorum satır (%
ile vurgulanır):
\begin{table}
\begin{center}
\begin{tabular}{l c c c c }
\hline
%*************A HEADER LINE HERE*********************
& \multicolumn{2}{c}{A} & \multicolumn{2}{c}{B} \\ %
%****************************************************
& 1 & 2 & 1 & 2 \\
\hline
Intercept & $-0.13$ & $-0.13$ & $-0.11$ & $-0.11$ \\
& $(0.12)$ & $(0.12)$ & $(0.12)$ & $(0.12)$ \\
x & $0.02$ & $0.07$ & $0.13$ & $-0.11$ \\
& $(0.13)$ & $(0.12)$ & $(0.12)$ & $(0.13)$ \\
\hline
R$^2$ & 0.00 & 0.00 & 0.01 & 0.01 \\
Adj. R$^2$ & -0.01 & -0.01 & 0.00 & -0.00 \\
Num. obs. & 100 & 100 & 100 & 100 \\
RMSE & 1.18 & 1.17 & 1.17 & 1.17 \\
\hline
\multicolumn{5}{l}{\scriptsize{$^{***}p<0.001$, $^{**}p<0.01$, $^*p<0.05$}}
\end{tabular}
\caption{Statistical models}
\label{table:coefficients}
\end{center}
\end{table}
Bir şey mi eksik veya bunu yapmak için yerleşik bir yol yok mu?
x <- capture.output(texreg(
regs, custom.coef.names = c("Intercept", rep("x", 4)),
custom.model.names = c("1", "2", "1", "2")))
x[6] <- paste0("& \\multicolumn{2}{c}{A} & \\multicolumn{2}{c}{B} \\\\ \n", x[6])
cat(x, sep = "\n")
Ama bu tabii ki biraz kanalı-bant-y var:
Benim çözümdür.
Gerçekten de bu yüzden bir süredir “çok noktaya” özelliğini eklemeyi düşünüyorum. Bunu bir işleve yazmaktan rahatsızlık duymak için biraz fazla özverili buluyorum ve sadece durumun kendi başına hallediyorum. Cevap için teşekkürler. – MichaelChirico