siunitx: S 列で平均と標準偏差を「M (SD)」として出力する正しい方法は何ですか?

siunitx: S 列で平均と標準偏差を「M (SD)」として出力する正しい方法は何ですか?

使用しようとしています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、完全な標準偏差値を示します (心理学では通常どおり)。

私の質問は、コード内で実際の標準偏差値 (.11 など) を指定しながら、siunitx形式で出力を行うにはどうすればよいかということです。入力は実際の標準偏差値 (例 ) を返す R コード (knitr を使用) からのものであるため、の短い不確実性形式は使用できません。M (SD)SDsiunitx\Sexpr{sd(some.numbers)}

編集: 試してみましたseparate-uncertaintyが、 の出力が強制されるようなM ± SDので を使用したいと思いますM (SD)

答え1

によって解析される書式はとsiunitxであり、他の書式は解析されません。したがって、目的の効果を得るには、いくつかの解析を個別に実行する必要があります。1つの方法は、セルの内容を取得し、書式を変更し、コマンドを使用して配置を行うことです。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}

関連情報