对齐环境结束 {align*} 错误

对齐环境结束 {align*} 错误

我在对齐环境中运行以下代码时遇到问题:

\begin{align*}
&\mathrm{
    E(Y_i|D_i=1)-E(Y_i|D_i=0)&=E(Y_{1i}|D_i=1)-E(Y_{0i}|D_i=0)
    }\\
    \mathrm{
    &=\underbrace{E(Y_{1i}|D_i=1)-E(Y_{0i}|D_i=1)}_{\text{ATT}}+\underbrace{E(Y_{0i}|D_i=1)-E(Y_{0i}|D_i=0)}_{\text{selection bias}}
    }.
\end{align*}

错误消息显示以下内容: !Missing } 已插入。\end {align}

我曾尝试自己调试代码,但是所有调试尝试均未成功。

谁能找出错误在哪里?

答案1

由于您将 放在&\mathrm{},因此会导致该错误。我稍微修改了您的代码(将 移出&\mathrm{}在 中添加一些空格\:)。

\begin{align*}
&\mathrm{
    E(Y_i|D_i=1)-E(Y_i|D_i=0)}\\
    =\:&\mathrm{E(Y_{1i}|D_i=1)-E(Y_{0i}|D_i=0)
    }\\
    =\:&\mathrm{\underbrace{E(Y_{1i}|D_i=1)-E(Y_{0i}|D_i=1)}_{\text{ATT}}+\underbrace{E(Y_{0i}|D_i=1)-E(Y_{0i}|D_i=0)}_{\text{selection bias}}
    }.
\end{align*}

结果如下: 在此处输入图片描述

如果最后一行也想获得正常文本,你可以尝试这个

\begin{align*}
&\mathrm{
    E(Y_i|D_i=1)-E(Y_i|D_i=0)}\\
    =\:&\mathrm{E(Y_{1i}|D_i=1)-E(Y_{0i}|D_i=0)
    }\\
    =\:&\underbrace{\mathrm{E(Y_{1i}|D_i=1)-E(Y_{0i}|D_i=1)}}_{\text{ATT}}+\underbrace{\mathrm{E(Y_{0i}|D_i=1)-E(Y_{0i}|D_i=0)}}_{\text{selection bias}}.
\end{align*}

在此处输入图片描述

答案2

如果您确实想要直立打印数学运算,请使用专用包,而不是添加不需要的标记,例如\mathrm

\documentclass{article}
\usepackage{amsmath}
\usepackage{mathastext}

\begin{document}

\begin{align*}
& E(Y_i|D_i=1)-E(Y_i|D_i=0)
\\
&=E(Y_{1i}|D_i=1)-E(Y_{0i}|D_i=0)
\\
&=\underbrace{E(Y_{1i}|D_i=1)-E(Y_{0i}|D_i=1)}_{\text{ATT}}
 +\underbrace{E(Y_{0i}|D_i=1)-E(Y_{0i}|D_i=0)}_{\text{selection bias}}.
\end{align*}

\end{document}

在此处输入图片描述

答案3

欢迎!这是由于mathrm{…}命令包含一个 & 符号。无论如何,使用align*,公式不适合文本宽度,所以我建议使用 。我还用multline*替换了各种,它具有更好的间距,并在两行之间添加了一个小的垂直间距。|\mid

\documentclass{article}
\usepackage{amsmath, amssymb}

\begin{document}

\begin{multline*}
    \mathrm{E(Y_i\mid D_i=1)-E(Y_i\mid D_i=0) =E(Y_{1i}\mid D_i=1)-E(Y_{0i}\mid D_i=0)}
   \\[0.8ex]
=\underbrace{\mathrm{E(Y_{1i}\mid D_i = 1) - E(Y_{0i}\mid D_i=1)}}_{\text{ATT}} + \underbrace{\mathrm{E(Y_{0i}\mid D_i=1)-E(Y_{0i}\mid D_i=}0)}_{\text{selection bias}}.
\end{multline*}

\end{document} 

在此处输入图片描述

相关内容