%E3%80%8D%E7%9A%84%E6%AD%A3%E7%A2%BA%E6%96%B9%E6%B3%95%E6%98%AF%E4%BB%80%E9%BA%BC%EF%BC%9F.png)
我正在嘗試使用siunitx
在心理學結果表中排列小數,表格如下所示:
\documentclass[]{article}
\begin{document}
\begin{table}[h]
\begin{tabular}{@{}cc@{}}
\multicolumn{2}{c}{Mean (SD)} \\
\hline
A & B \\
\hline
.45 (.23) & .78 (.11) \\
\end{tabular}
\end{table}
\end{document}
這並不遵循所siunitx
使用的簡短形式的不確定性,而是給出了完整的標準差值(如心理學中常見的那樣)。
我的問題是如何在程式碼中提供實際標準差值(例如 0.11)的同時將siunitx
輸出轉換為格式?我無法使用 的短不確定性格式,因為輸入來自 R 代碼(使用 knit),它會傳回實際標準差值,例如。M (SD)
SD
siunitx
\Sexpr{sd(some.numbers)}
編輯:我已經嘗試過separate-uncertainty
,但這似乎強制輸出M ± SD
並且我想使用M (SD)
.
答案1
解析的格式siunitx
是1.23(4)
和1.23 \pm 0.04
,沒有其他格式。因此,為了達到預期的效果,必須單獨完成一些解析。一種方法是抓取單元格內容,更改格式並使用\tablenum
命令進行對齊
\documentclass[]{article}
\usepackage{siunitx}
\def\converter\ignorespaces#1(#2){%
\begingroup\tablenum[table-format = 1.2]{#1}\endgroup\space
(\tablenum[table-format = 1.2]{#2})}
\newcolumntype{R}{>{\converter}c}
\begin{document}
\begin{table}[h]
\begin{tabular}{@{}RR@{}}
\multicolumn{2}{@{}c@{}}{Mean/SD} \\
.45 (.23) & .78 (.11) \\
0.2(.4) \\
\end{tabular}
\end{table}
\end{document}