Tengo la siguiente tabla:
\begin{table}[h]
\centering
\caption{Transfer Entropy Results}
\label{tab1:entropy}
\begin{threeparttable}
\begin{tabularx}{\textwidth}{CC}
\toprule
Causal test & Results \\
\midrule
\multicolumn{1}{c}{\multirow{2}[1]{*}{Bitcoin $\rightarrow$ IPImicro}} & 0.015 \\
& (-0.023) \\
\multicolumn{1}{c}{\multirow{2}[0]{*}{IPImicro $\rightarrow$ Bitcoin }} & 0.091** \\
& (-0.027) \\
\multicolumn{1}{c}{\multirow{2}[0]{*}{Bitcoin $\rightarrow$ IPImacro}} & 0.007 \\
& (-0.028) \\
\multicolumn{1}{c}{\multirow{2}[1]{*}{IPImacro $\rightarrow$ Bitcoin }} & 0.073** \\
& (-0.025) \\
\bottomrule
\end{tabularx}
\begin{tablenotes}[para,flushleft]
\footnotesize
\item\hspace{-2.5pt}\noindent\textit{Note:} This table presents the Transfer Entropy estimation results. Standard deviation in parentheses; *** p < 0.01; ** p < 0.05; * p < 0.10.
\end{tablenotes}
\end{threeparttable}
\end{table}
Lo que quiero es alinear los números en el marcador decimal usando siunitx.
Sin embargo, lo que obtengo es esto:
\begin{table}[h]
\centering
\caption{Transfer Entropy Results}
\label{tab1:entropy}
\begin{threeparttable}
\begin{tabular*}{\textwidth}{c@{\extracolsep{\fill}}*{2}{S}}
\toprule
\multicolumn{1}{c}{Causal test} & \multicolumn{1}{c}{Regime 1} \\
\midrule
\multicolumn{1}{c}{\multirow{2}[1]{*}{Bitcoin $\rightarrow$ IPImicro}} & 0.015 \\
& {(}-4.710{)} \\
\multicolumn{1}{c}{\multirow{2}[0]{*}{IPImicro $\rightarrow$ Bitcoin }} & 0.091** \\
& {(}-4.710{)} \\
\multicolumn{1}{c}{\multirow{2}[0]{*}{Bitcoin $\rightarrow$ IPImacro}} & 0.007 \\
& {(}-4.710{)} \\
\multicolumn{1}{c}{\multirow{2}[1]{*}{IPImacro $\rightarrow$ Bitcoin }} & 0.073** \\
& {(}-4.710{)} \\
\bottomrule
\end{tabular*}
\begin{tablenotes}[para,flushleft]
\footnotesize
\item\hspace{-2.5pt}\noindent\textit{Note:} This table presents the Transfer Entropy estimation results. Standard deviation in parentheses; *** p < 0.01; ** p < 0.05; * p < 0.10.
\end{tablenotes}
\end{threeparttable}
\end{table}
La primera columna está alineada a la izquierda. ¿Alguna idea de lo que estoy haciendo mal? Me gustaría obtener exactamente el mismo resultado que en el ejemplo 1, simplemente alineado con el marcador decimal. En el segundo paso: ¿Es posible siquiera tener las flechas una debajo de la otra?
Respuesta1
- La causa de su problema parece ser el uso de
@{\extracolsep{\fill}}
- defines tres columnas, pero usas solo dos...
- No usaría
tabular*
el entorno de tabla, en mi opinión, el resultado no es agradable. - Como solución a su problema, puse los encabezados de las columnas en
p
columnas con un ancho igual a la mitad del ancho del texto. - en mi MWE, elimino todo el código innecesario, reparo la definición para
S
el tipo de columna y uso elmesa de tres partesxpaquete:
\documentclass{article}
\usepackage{siunitx}
\usepackage{booktabs, multirow}
\usepackage[referable]{threeparttablex}
\begin{document}
\begin{table}[h]
\centering
\caption{Transfer Entropy Results}
\label{tab1:entropy}
\begin{threeparttable}
\begin{tabular*}{\textwidth}{c
S[input-open-uncertainty,
input-close-uncertainty,
table-space-text-pre=(,
table-space-text-post={**},
table-align-text-post=false,
table-format=-1.3]
}
\toprule
\multicolumn{1}{>{\centering}p{0.5\linewidth}}{Causal test}
& \multicolumn{1}{>{\centering\arraybackslash}p{0.5\linewidth}}{Regime 1} \\
\midrule
\multirow{2}{*}{Bitcoin $\rightarrow$ IPImicro} & 0.015 \\
& (-4.71) \\
\addlinespace
\multirow{2}{*}{IPImicro $\rightarrow$ Bitcoin} & 0.091** \\
& (-4.710) \\
\addlinespace
\multirow{2}{*}{Bitcoin $\rightarrow$ IPImacro} & 0.007 \\
& (-4.710) \\
\addlinespace
\multirow{2}{*}{IPImacro $\rightarrow$ Bitcoin} & 0.073** \\
& (-4.710) \\
\bottomrule
\end{tabular*}
\begin{tablenotes}[para,flushleft]\footnotesize
\note: This table presents the Transfer Entropy estimation results.
Standard deviation in parentheses.
\item[***] $p < 0.01$;
\item[**] $p < 0.05$;
\item[*] $p < 0.10$.
\end{tablenotes}
\end{threeparttable}
\end{table}
\end{document}
Respuesta2
Sobre la base deLa respuesta de Zarko., aquí hay una variante que también alinea el contenido de la primera columna con respecto al \rightarrow
. Sin embargo, tabular*
lo he reemplazado tabular
porque hay una cantidad bastante grande de espacio en blanco horizontal en la tabla. Agregué algunos \addlinespace
comandos para darle más estructura a la tabla.
\documentclass{article}
\usepackage{siunitx}
\usepackage{booktabs, multirow}
\usepackage[referable]{threeparttablex}
\usepackage{calc}
\begin{document}
\begin{table}[h]
\centering
\caption{Transfer Entropy Results}
\label{tab1:entropy}
\begin{threeparttable}
\begin{tabular}{r@{}l
S[input-open-uncertainty,
input-close-uncertainty,
table-space-text-post={**},
table-space-text-pre={(},
table-format=-1.3]
}
\toprule
\multicolumn{2}{c}{Causal test} & {Regime 1} \\
\midrule
\multirow{2}{*}{Bitcoin} & \multirow{2}{*}{~\(\rightarrow\)~ IPImicro} & 0.015 \\
& & (-4.71) \\ \addlinespace
\multirow{2}{*}{IPImicro} & \multirow{2}{*}{~\(\rightarrow\)~ Bitcoin} & 0.091** \\
& & (-4.710) \\ \addlinespace
\multirow{2}{*}{Bitcoin} & \multirow{2}{*}{~\(\rightarrow\)~ IPImacro} & 0.007 \\
& & (-4.710) \\ \addlinespace
\multirow{2}{*}{IPImacro} & \multirow{2}{*}{~\(\rightarrow\)~ Bitcoin} & 0.073** \\
& & (-4.710) \\
\bottomrule
\end{tabular}
\begin{tablenotes}[para,flushleft]\footnotesize
\note: This table presents the Transfer Entropy estimation results.
Standard deviation in parentheses.
\item[***] $p < 0.01$;
\item[**] $p < 0.05$;
\item[*] $p < 0.10$.
\end{tablenotes}
\end{threeparttable}
\end{table}
\end{document}