表格中结果对齐问题(longtable 和 siunitx)

表格中结果对齐问题(longtable 和 siunitx)

我正在创建一个包含回归结果的表格。这是结果:

在此处输入图片描述

小数点对齐效果很好。但仍有两个问题:

  • 当具有负值时,在数字和星号之间插入一个空格。
  • 标题仅在使用多列时显示。现在,它们实际上并没有与任何东西对齐。在多列环境中使用“c”或“r”并不能真正解决问题。

这是代码:

\documentclass[11pt]{article}


\usepackage{amsmath} 
\usepackage{longtable, booktabs}
\usepackage{siunitx}

\begin{document}

\begin{longtable}{@{}p{3cm}SS@{}} 
\centering
\kill

\toprule
 & \multicolumn{1}{l}{Target}    & \multicolumn{1}{l}{$R^2$}     \\*

\midrule
\endhead

\bottomrule
\endfoot

% body 
OIS\_1Y            & 1.67* & 0.55     \\
OIS\_2Y            & 1.61*** & 0.42   \\
OIS\_5Y            & -1.15*** & 0.25  \\
OIS\_10Y           & -0.09** & 0.09   \\
stoxx50euro        & -0.04*  & 0.06   \\
\end{longtable}

\end{document}

答案1

您可以通过指定适合您的列的选项来为 siunitx 提供一点帮助table-format,有关更多详细信息,请参阅 siunitx 文档的“4.12 表格材料”部分。

\documentclass[11pt]{article}


\usepackage{amsmath} 
\usepackage{longtable, booktabs}
\usepackage{siunitx}

\begin{document}

\begin{longtable}{@{}p{3cm}S[table-format=-1.2,table-align-text-after=true,table-space-text-post={***}]S[table-format=1.2]@{}} 
\centering
\kill

\toprule
 & {Target}    & {$R^2$}     \\*

\midrule
\endhead

\bottomrule
\endfoot

% body 
OIS\_1Y            & 1.67* & 0.55     \\
OIS\_2Y            & 1.61*** & 0.42   \\
OIS\_5Y            & -1.15*** & 0.25  \\
OIS\_10Y           & -0.09** & 0.09   \\
stoxx50euro        & -0.04*  & 0.06   \\
\end{longtable}

\end{document}

在此处输入图片描述

相关内容