
inglês não é minha língua nativa, mas tentarei explicar minha dúvida da melhor maneira possível.
Meu problema é o espaçamento extra entre as colunas L e T que aparentemente surge quando escrevo os números no modo científico. Existe alguma maneira de ter números científicos como este, alinhá-los por vírgula e tornar o espaçamento nas colunas mais normal (menor)?
Preâmbulo:
\documentclass[12pt,twoside]{report}
\usepackage{booktabs}
\usepackage{siunitx}
\usepackage[a4paper,width=150mm,top=25mm,bindingoffset=6mm]{geometry}
\usepackage{amsmath}
\sisetup{input-symbols = ()}
Código da tabela:
\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}
Espero que alguém aqui tenha tempo para me responder. Tentei pesquisar/pesquisar no Google, mas não encontrei nada específico que pudesse usar para resolver meu problema.
Responder1
Acho que seu principal problema é ocolchetes (redondos)usados para cercar seus números, pois também são usados como entrada natural do \num
comando para indicar o erro de um número. É por isso que você deve proteger os colchetes (redondos), colocando-os entre colchetes.
(Eu não usaria sua solução e os adicionaria ao input-symbols
, porque isso poderia causar alguns efeitos colaterais indesejados, que não testei.)
Para acertar o espaçamento é bastante simples e já está respondido, por exemploaquifornecendo os "elementos" que podem ser encontrados na coluna para as opções do S
especificador como table-format
. (Dê uma olhada emtabela 25 do siunitx
manual v2.6 na página 47).
Dê uma olhada no código a seguir que reduzi um pouco, para não desviar a atenção da tabela principal.
\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}