当我必须考虑统计表中的(重要性)星号时,我很难对齐多列对象。我使用 table-space-text-post ={***} 命令来确保表格水平条覆盖数字 - 否则星号会超出表格的 \toprule。但这会导致另一个问题:受 table-space-text-post 影响的单元格内的标题和其他文本未与统计数据正确对齐(即所有包含在 \multicolumn 环境中的文本)。顺便说一句,我使用 \sisetup 命令来确保括号内的图形也正确对齐,这似乎有效。这是我目前拥有的代码:
\documentclass{article}
\usepackage{booktabs,caption}
\captionsetup[table]{font=large}
\newcommand\mc[1]{\multicolumn{1}{c}{#1}} % handy shortcut macro
\usepackage{adjustbox}
\usepackage{rotating}
\usepackage[flushleft]{threeparttable}
% *****************************************************************
% siunitx
% *****************************************************************
\usepackage{siunitx}
\sisetup{group-separator = {,}, group-four-digits,
detect-mode,
tight-spacing = true,
input-signs = ,
input-symbols = ,
input-open-uncertainty = ,
input-close-uncertainty = ,
table-align-text-pre = false,
table-space-text-pre = (,
} % centering in tables
\begin{document}
\begin{tabular}{l S[table-format=1.3, table-space-text-post ={***}]} \toprule \toprule
Text & \mc{abc} \\
\midrule \\
T & 0.444*** \\
& ( 0.111) \\ \addlinespace
Constant & 0.888*** \\
& ( 0.222) \\ \addlinespace
Observations & \mc{99,999} \\
R-square & 0.123 \\
\bottomrule \bottomrule
\end{tabular}
\end{document}
我如何才能正确地将列与文本、统计数据和星号对齐?如果您看到下面的表格(这是上述代码的结果),标题“abc”和“99,999”数字与数字和星号一起对齐(好像数字和星号是一个对象)。我希望标题只与数字对齐,而忽略星号。任何帮助都将不胜感激。
答案1
问题在于您使用的是c
列,这实际上消除了siunitx
处理数字的任何能力。因此,您需要S
为多列命令使用一列,然后S
为该列中的奇数修复该列的参数。在这种情况下,您可以指定
\multicolumn{1}{S[table-format=2]}{99999}
以获得您想要的对齐。
\documentclass{article}
\usepackage{booktabs,caption}
\captionsetup[table]{font=large}
\newcommand\mc[1]{\multicolumn{1}{c}{#1}} % handy shortcut macro
% *****************************************************************
% siunitx
% *****************************************************************
\usepackage{siunitx}
\sisetup{group-separator = {,}, group-four-digits,
detect-mode,
tight-spacing = true,
input-signs = ,
input-symbols = ,
input-open-uncertainty = ,
input-close-uncertainty = ,
table-align-text-pre = false,
table-space-text-pre = (,
} % centering in tables
\begin{document}
\begin{tabular}{l S[table-format=1.3, table-space-text-post ={***}]} \toprule \toprule
Text & \mc{abc} \\
\midrule \\
T & 0.444*** \\
& ( 0.111) \\ \addlinespace
Constant & 0.888*** \\
& ( 0.222) \\ \addlinespace
Observations & \multicolumn{1}{S[table-format=2]}{99999}\\
R-square & 0.123 \\
\bottomrule \bottomrule
\end{tabular}
\end{document}