
Tengo una tabla para una regresión, que tiene dos partes principales ("Inmigrantes" y "Locales"). Me gustaría poner una pequeña línea debajo de Inmigrantes que va desde donde comienza el primer modelo ("Discapacidad") hasta donde termina el último modelo ("tasa"), y otra línea del mismo largo debajo de "Locales". Mi intención es separar mejor las dos partes del cuadro. ¿Es esa una posibilidad? ¿Cómo puedo hacerlo? Estoy agregando mi código y una captura de pantalla. ¡Muchas gracias!
\begin{table}[H]\centering
\def\sym#1{\ifmmode^{#1}\else\(^{#1}\)\fi}
\caption{Health}
\begin{tabular}{l*{5}{c}}
\toprule
&\multicolumn{2}{c}{Immigrants} & & \multicolumn{2}{c}{Locals} \\
\addlinespace
&\multicolumn{1}{c}{Disability}&\multicolumn{1}{c}{Offspring survival rate}& & \multicolumn{1}{c}{Disability}&\multicolumn{1}{c}{Offspring survival rate}\\
\midrule
Low & -0.00190 & -0.00525 & & 0.00185 & -0.00186 \\
& (-0.43) & (-0.40) & & (0.83) & (-0.36) \\
\addlinespace
High & -0.00865 & 0.00429 & & -0.00413 & -0.0207\sym{*} \\
& (-1.21) & (0.20) & & (-1.01) & (-2.24) \\
(Además, como puedes ver, tengo una columna vacía adicional entre ellas para crear más espacio)
Respuesta1
Utilice el \cline
equivalente ofrecido porbooktabs
:
\documentclass{article}
\usepackage{booktabs}
\begin{document}
\begin{table}
\centering
\def\sym#1{\ifmmode^{#1}\else\(^{#1}\)\fi}%
\begin{tabular}{l*{4}{c}}
\toprule
& \multicolumn{2}{c}{Immigrants} & \multicolumn{2}{c}{Non-immigrants} \\
\cmidrule(lr){2-3}\cmidrule(lr){4-5}
& \multicolumn{1}{c}{Disability} & \multicolumn{1}{c}{Offspring survival rate} &
\multicolumn{1}{c}{Disability} & \multicolumn{1}{c}{Offspring survival rate} \\
\midrule
Low & -0.00190 & -0.00525 & 0.00185 & -0.00186 \\
& (-0.43) & (-0.40) & (0.83) & (-0.36) \\
\addlinespace
High & -0.00865 & 0.00429 & -0.00413 & -0.0207\sym{*} \\
& (-1.21) & (0.20) & (-1.01) & (-2.24) \\
\bottomrule
\end{tabular}
\end{table}
\end{document}
Elopcional (lr)
El argumento para \cmidrule
recorta la línea en el lado l
izquierdo y r
derecho para que estén separados entre las columnas tres y cuatro.
Respuesta2
Agregue el \cline
comando en lugar de \midrule
o después de la primera fila de la tabla (dependiendo de lo que realmente desee). Por ejemplo
& \multicolumn{2}{c}{Immigrants} & & \multicolumn{2}{c}{Locals} \\ \cline{2-3} \cline{5-6}
Los números i-j
en el \cline{i-j}
comando especifican las columnas que deben estar "subrayadas", es decir, la línea comienza en la columna i
y termina en la columna j
.
Editar:
Si está utilizando el booktabs
paquete, utilice el comando equivalente \cmidrule
sugerido por @Werner. Sin embargo, tenga en cuenta que el booktabs
paquete modifica la apariencia predeterminada de la tabla y algunas características de las tablas originales ya no producen resultados satisfactorios (como las reglas de las tablas verticales). Dicho esto, utilizar booktabs
suele ser una mejor opción.
Respuesta3
Además de utilizar algunas de las macros de dibujo lineal del booktabs
paquete para darle a la tabla un aspecto "abierto", también deberías
hacer que la tabla no exceda el ancho del bloque de texto; Esto se puede hacer usando un
tabularx
entorno para insertar un salto de línea en las cadenas.Offspring survival rate
alinear los datos numéricos en sus respectivos marcadores decimales y utilizar
-
signos (menos) adecuados en lugar de guiones para los números negativos; Esto se puede hacer cargando eldcolumn
paquete y usando losD
tipos de columnas.
\documentclass{article}
\usepackage{booktabs,tabularx,dcolumn}
\newcolumntype{d}[1]{D..{#1}}
\newcolumntype{C}{>{\centering\arraybackslash}X}
\newcommand\mc[1]{\multicolumn{1}{C}{#1}} % shortcut macro
\def\sym#1{\ifmmode^{#1}\else\(^{#1}\)\fi}
\begin{document}
\begin{table}
\caption{Health}
\begin{tabularx}{\textwidth}{ l *{4}{d{2.5}} }
\toprule
& \multicolumn{2}{c}{Immigrants} & \multicolumn{2}{c}{Non-immigrants} \\
\cmidrule(lr){2-3}\cmidrule(l){4-5}
& \mc{Disability} & \mc{Offspring survival rate}
& \mc{Disability} & \mc{Offspring survival rate} \\
\midrule
Low &-0.00190 & -0.00525 & 0.00185 & -0.00186 \\
& (-0.43) & (-0.40) & (0.83) & (-0.36) \\
\addlinespace
High & -0.00865 & 0.00429 & -0.00413 & -0.0207\sym{*} \\
& (-1.21) & (0.20) & (-1.01) & (-2.24) \\
\bottomrule
\end{tabularx}
\end{table}
\end{document}