首页 文章

Stata esttab / LaTeX错误:额外对齐选项卡已更改为\ cr

提问于
浏览
0

结合并修改此代码(http://www.stata.com/statalist/archive/2012-11/msg00756.html)和此代码(http://www.stata.com/statalist/archive/2009-02/msg00023.html),我尝试在Stata中使用 esttabestout 的一部分)来导出可以在LaTeX中编译的文件 . 这种情况的实际应用可能涉及一个复杂的汇总统计表,其中一个是从几个不同来源提取统计数据,因此需要利用矩阵 . 但是,当我编译时,我在LaTeX中收到错误 . 错误是:

Extra alignment tab has been changed to \cr.

Stata代码:

clear all
eststo clear
mat A = (1,2\5,6)
mat coln A = male:1979 male:2007
mat rown A = mystat
ereturn post
estadd matrix B = A'
eststo MaleLabel
mat A = (3,4\7,8)
mat coln A = female:1979 female:2007
mat rown A = mystat
ereturn post
estadd matrix B = A'
eststo FemaleLabel
esttab MaleLabel FemaleLabel using "esttab.tex", ///
    cell((B["1979"]B["2007"])) booktabs ///
    mgroups("Male" "Female", pattern(1 1) prefix(\multicolumn{@span}{c}{) suffix(}) span erepeat(\cmidrule(lr){@span})) ///
    noobs replace nomtitles nonum

乳胶代码:

\documentclass[12pt]{article} 
\usepackage{booktabs}
\begin{document}
\begin{table}[htbp]
\begin{center}
\input{esttab}
\end{center}
\end{table}
\end{document}

esttab 生成的文件是:

{
\def\sym#1{\ifmmode^{#1}\else\(^{#1}\)\fi}
\begin{tabular}{l*{2}{c}}
\toprule
            &\multicolumn{2}{c}{Male} &\multicolumn{2}{c}{Female}\\\cmidrule(lr){2-3}\cmidrule(lr){4-5}
            &        1979&        2007&        1979&        2007\\
\midrule
mystat      &           1&           2&           3&           4\\
mystat      &           5&           6&           7&           8\\
\bottomrule
\end{tabular}
}

现在,如果我调整这一行,我可以开始工作:

\begin{tabular}{l*{2}{c}}

成为:

\begin{tabular}{l*{2}{cc}}

(我添加了额外的 c . )

但我只知道如何手动执行此操作 . 我可以在Stata代码中更改哪些内容以自动执行此操作?

1 回答

  • 1

    将这个简单的选项添加到您的企业代码

    prehead({\begin{tabular}{l*{2}{cc}}\toprule)

    而你就是我的男人!

相关问题