我尝试使用tabular
和,align
但仍然无法获得类似的效果。具体来说,括号中的数值正好位于系数下方,小数点处对齐,等等。有没有什么方法可以实现?
编辑:我想我应该把我作为 MWE 的尝试包括在内:
\documentclass{article}
\usepackage{amsmath}
\newcommand{\ti}[1]{\textit{#1}}
\begin{document}
\begin{alignat*}{9}
\widehat{\ti{math}4} & = 24.49 & {} - .274 & \ti{pctsgle} & {} - .422 & \ti{free} & {} - .752 & \ti{lmedinc} & {} + 9.01 & \ti{lexppp} \\
& \phantom{{} = {}} (59.24) & (.161) & & (.071) & & (5.358) & & (4.04) \\
n & = 299, R^2 = .472
\end{alignat*}
\end{document}
答案1
使用array
. 数字符号会略有改变(小数点前始终是数字):
\documentclass{article}
\usepackage{geometry}
\usepackage{amsmath}
\usepackage{mathabx} % for widehat
\newcommand{\ti}[1]{\textit{#1}}
\usepackage{siunitx}
\begin{document}
\[\setlength\arraycolsep{2pt}
\sisetup{input-symbols = {( )}}
\begin{array}{r c
S[table-format=2.2] c
S[table-format=1.3]l c
S[table-format=1.3]l c
S[table-format=1.3]l c
S[table-format=1.2]l
}
\widehat{\ti{math}4}
& =
& 24.49 & - & 0.274 & \ti{pctsgle} & -
& 0.422 & \ti{free} & -
& 0.752 & \ti{lmedinc} & +
& 9.01 & \ti{lexppp} \\
&
& (59.24) & & (0.161) & &
& (0.071) & &
& (5.358) & &
& (4.04) & \\
n & = & \multicolumn{13}{l}{299,\quad R^2 = 0.472}
\end{array}
\]
\end{document}
答案2
我会将底部的数字打印得更小,这样它们就不太可能与较近的数字归为一类。\hidewidth
我们确保它们不会占用水平空间,但无论如何都会位于主系数的中央。
\documentclass{article}
\usepackage{amsmath,amssymb}
\newcommand{\tvar}[1]{\operatorname{\mathit{#1}}}
\newcommand{\coeff}[2]{%
\begingroup\renewcommand{\arraystretch}{0.75}%
\begin{array}[t]{@{}c@{}}
#1 \\ % the main number
\scriptstyle \hidewidth(#2)\hidewidth
\end{array}%
\endgroup
}
\begin{document}
\begin{align*}
\widehat{\tvar{math}4}
& = \coeff{24.49}{59.24}
- \coeff{.274}{.161} \tvar{pctsgle}
- \coeff{.422}{.071} \tvar{free}
- \coeff{.752}{5.538} \tvar{lmedinc}
+ \coeff{9.01}{4.04} \tvar{lexppp}
\\
n & = 299,\quad R^2 = .472
\end{align*}
\end{document}