我正在编写一个文档,需要在其中插入统计程序生成的表格Stata
。更具体地说,我正在使用Stata
包outreg2
。下面是我要插入的表格类型的示例:
\begin{tabular}{lcc} \hline
& (1) & (2) \\
VARIABLES & mpg & mpg \\ \hline
& & \\
foreign & -1.967 & -1.655 \\
& (1.181) & (1.082) \\
weight & -0.00420** & -0.00647*** \\
& (0.00202) & (0.000700) \\
headroom & -0.0592 & -0.219 \\
& (0.645) & (0.542) \\
trunk & -0.0122 & \\
& (0.159) & \\
length & -0.0631 & \\
& (0.0644) & \\
turn & -0.165 & \\
& (0.198) & \\
displacement & 0.000792 & \\
& (0.0103) & \\
Constant & 53.14*** & 41.99*** \\
& (7.584) & (2.312) \\
& & \\
Observations & 74 & 74 \\
R-squared & 0.677 & 0.663 \\ \hline
\multicolumn{3}{c}{ Standard errors in parentheses} \\
\multicolumn{3}{c}{ *** p$<$0.01, ** p$<$0.05, * p$<$0.1} \\
\end{tabular}
您可以通过以下方式复制表Stata
:
sysuse auto,clear
regress mpg foreign weight headroom trunk length turn displacement
outreg2 using myfile, replace tex(frag)
regress mpg foreign weight headroom
outreg2 using myfile, tex(frag)
我创建了一个新的 tex 命令来插入表格:
\newcommand{\stataTable}[3]{
\begin{table}
\begin{threeparttable}
\caption{#2}
\noindent\adjustbox{max width=\textwidth}{%
\input{#1}}
\begin{tablenotes}
\small
\item #3
\end{tablenotes}
\end{threeparttable}
\end{table}
}
它以输入文件、标题和尾注作为参数。现在我尝试通过以下方式在文档中添加表格:
\stataTable{myfile.tex}{OLS estimates.}{\lipsum}
我用包来做这个threeparttable
,因为我需要在表格末尾添加注释。
不幸的是,这不起作用,我得到了错误Missing \endgroup inserted...
。我知道缺少花括号是一个可能的原因,但我就是想不出那可能在哪里。
不过,我可以使用不调整表格宽度的替代命令来完成这项工作:
\newcommand{\stataTable}[3]{
\begin{table}
\begin{threeparttable}
\caption{#2}
\input{#1}
\begin{tablenotes}
\small
\item #3
\end{tablenotes}
\end{threeparttable}
\end{table}
}
因此,似乎通过尝试调整表格的宽度,我以某种方式破坏了该功能。我还尝试了另一种方法(\mytabularwrap
)来调整此处显示的宽度:
那也没用。不过,表格宽度需要调整为文本宽度。
任何想法如何解决这一问题?