Проблема с выравниванием чисел с окружающими их скобками

Проблема с выравниванием чисел с окружающими их скобками

Английский не является моим родным языком, но я постараюсь объяснить свой вопрос как можно лучше.

Моя проблема в дополнительном интервале между столбцами L и T, который, по-видимому, появляется, когда я пишу числа в научном режиме. Есть ли способ сделать научные числа такими, выровнять их по запятой и сделать интервал в столбцах более нормальным (меньше)?

Преамбула:

\documentclass[12pt,twoside]{report}
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage[a4paper,width=150mm,top=25mm,bindingoffset=6mm]{geometry}
\usepackage{amsmath}
\sisetup{input-symbols = ()}

Код таблицы:

\begin{table}[ht]\centering
\caption[caption]{caption}\label{reg_basis1}
\def\sym#1{\ifmmode^{#1}\else\(^{#1}\)\fi}
\sisetup{table-space-text-post = \sym{***}}

\begin{tabular}{l*{5}{S[table-align-text-post=false]}}
\toprule
\multicolumn{1}{l}{\textbf{}}&\multicolumn{1}{c}{\textbf{L}}&
\multicolumn{1}{c}{\textbf{T}}&\multicolumn{1}{c}{\textbf{n}}&
\multicolumn{1}{c}{\textbf{\(R^{2}\)}}&
\multicolumn{1}{c}{\textbf{Justert $R^{2}$}}\\
\midrule
1997 - 2008 & 0.207 \sym{***} & 3.5\num{1e-4} \sym{***} & {623} & 0.27 & 0.21  \\
            & (0.049)         & (0.8\num{1e-4})         &       &      &       \\
        \addlinespace
2009 - 2015 &&&&&  \\
            &&&&&  \\
        \addlinespace
\bottomrule
\multicolumn{5}{l}{\footnotesize Estimerte standardavvik er gitt i parenteser}\\
\multicolumn{5}{l}{\footnotesize \sym{*} $p<0.05$, \sym{**} $p<0.01$, \sym{***} \  $p<0.001$}\\
\end{tabular}
\end{table}

Надеюсь, у кого-нибудь здесь найдется время ответить мне. Я пробовал искать/гуглить, но не нашел ничего конкретного, что я мог бы использовать для решения своей проблемы.

решение1

Я думаю, что ваша главная проблема в том,(круглые) скобкииспользуются для окружения ваших чисел, поскольку они также используются как естественный ввод команды \numдля указания ошибки числа. Вот почему вам нужно защитить (круглые) скобки, поместив их в фигурные скобки.

(Я бы не стал использовать ваше решение и добавлять их в input-symbols, так как это может вызвать нежелательные побочные эффекты, которые я не проверял.)

Чтобы затем правильно расставить интервалы, это довольно просто, и на этот вопрос уже дан ответ, напримерздесьпредоставление «элементов», которые могут быть найдены в столбце, параметрам спецификатора, Sнапример table-format. (Посмотрите натаблица 25 руководства siunitxv2.6 на стр. 47).

Взгляните на следующий код, который я немного сократил, чтобы не отвлекать от основной таблицы.

\documentclass[border=2mm]{standalone}
\usepackage{amsmath}
\usepackage{booktabs}
\usepackage{siunitx}
\begin{document}
        \def\sym#1{\ifmmode^{#1}\else\(^{#1}\)\fi}
        \sisetup{
            table-align-text-post=false,
        }
    \begin{tabular}{
        l
        S[table-format=1.3,   table-space-text-pre={(},table-space-text-post={\sym{***}}]
        S[table-format=1.1e-1,table-space-text-pre={(},table-space-text-post={\sym{***}}]
        S[table-format=3]
        S[table-format=1.2]
        S[table-format=1.2]
        }
            \toprule
                      & {\textbf{L}}    & {\textbf{T}}   & {\textbf{n}}
                                                               & {\textbf{$R^{2}$}}
                                                                      & {\textbf{Justert $R^{2}$}} \\
            \midrule
        1997 -- 2008  & 0.207 \sym{***} & 3e-4 \sym{***} & 623 & 0.27 & 0.21 \\
                      & {(}0.049{)}     & {(}0.8e-4{)}   &     &      &      \\
                \addlinespace
        2009 -- 2015  &                 &                &     &      &      \\
                      &                 &                &     &      &      \\
                \addlinespace
            \bottomrule
        \multicolumn{5}{l}{\footnotesize Estimerte standardavvik er gitt i parenteser}\\
        \multicolumn{5}{l}{\footnotesize
            \sym{*}   $p < \num{0.05}$,
            \sym{**}  $p < \num{0.01}$,
            \sym{***} $p < \num{0.001}$}\\
    \end{tabular}
\end{document}

изображение, показывающее результат кода выше

Связанный контент