我正在使用统计软件 stata。它有一个名为 -tabout- 的程序,可以生成 TeX 的输出代码(基本上是包含描述性统计数据的表格,包括变量的平均值等)。
目前,对于我需要的表,我获得了以下代码
\begin{center}
\footnotesize
\newcolumntype{Y}{>{\raggedleft\arraybackslash}X}
\begin{tabularx} {10cm} {@{} l Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y@{}} \\
\toprule
& \multicolumn{3}{c}{orgevent} \\
spontevent&0&1&Total \\
\cmidrule(l{.75em}){2-4} \cmidrule(l{.75em}){5-6}
&Relative&Relative&Relative \\
\midrule
0 (97\%)&0.016\%&0.011\%&0.016\% \\
1 (2\%)&0.044\%&&0.044\% \\
Total (100\%)&0.017\%&0.011\%&0.017\% \\
\bottomrule
\addlinespace[.75ex]
\scriptsize{\emph{Source: }#}
\end{tabularx}
\normalsize
\end{center}
但是我的 LaTeX 编译器指出了以下行中的错误
\end{tabularx}
报告的错误是
“pdflatex>!您不能在受限模式下使用‘宏参数字符#’”
请帮忙了解发生了什么事以及我如何才能看到表格?
从 stata 重新生成代码后,再次出现不同类型的错误位
\begin{center}
\footnotesize
\newcolumntype{Y}{>{\raggedleft\arraybackslash}X}
\begin{tabularx} {10cm} {@{} l Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y@{}} \\
\toprule
& \multicolumn{3}{c}{orgevent} \\
spontevent&0&1&Total \\
\cmidrule(l{.75em}){2-4} \cmidrule(l{.75em}){5-6}
&Relative&Relative&Relative \\
\midrule
0&0.016\%&0.011\%&0.016\% \\
1&0.044\%&&0.044\% \\
Total&0.017\%&0.011\%&0.017\% \\
\begin{center}
\footnotesize
\newcolumntype{Y}{>{\raggedleft\arraybackslash}X}
\begin{tabularx} {10cm} {@{} l Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y@{}} \\
\toprule
& \multicolumn{3}{c}{orgevent} \\
spontevent&0&1&Total \\
\cmidrule(l{.75em}){2-4} \cmidrule(l{.75em}){5-6}
&Relative&Relative&Relative \\
\midrule
0 (97\%)&0.016\%&0.011\%&0.016\% \\
1 (2\%)&0.044\%&&0.044\% \\
Total (100\%)&0.017\%&0.011\%&0.017\% \\
\bottomrule
\addlinespace[.75ex]
%\scriptsize{\emph{Source: }#}
\end{tabularx}
\normalsize
\end{center}
有没有 TeXperts 也对 stata 有经验?如你所见,代码似乎重复了两次
答案1
“Source” 行中只有一行#
。您可能需要在 Stata 中填写源字段,或者找到不生成该行的方法。
但是,我会输入该源代码行作为
\multicolumn{17}{@{}l}{\scriptsize\emph{Source}: ...}
以免扩大第一列。或者,
\makebox[0pt][l]{\scriptsize\emph{Source}: ...}
不需要知道跨越的列数。
顺便说一句,# $ & ˜ _ ˆ % { }
所有单个字符都有特殊含义,需要在\
它们前面加上 才能用作打印字符。