我试图创建一个包含 7 列的汇总统计表。代码如下:
\usepackage{booktabs, makecell, tabularx}
\newcommand\mc[1]{\multicolumn{1}{c}{\scriptsize #1}}
\newcolumntype{P}{>{\raggedright\scriptsize}p{6.2cm}}
\newcolumntype{R}{*{5}{>{\scriptsize}c}}
\begin{table}[!h]
\renewcommand\tabularxcolumn[1]{m{#1}}
\small
\begin{tabularx}{\linewidth}{@{}
L
S[table-format=5.0]
*{4}{S[table-format=10.2]}
@{} }
\toprule
Variables
& {\makecell[b]{Number of\\ observations}}
& {\makecell[b]{Mean}}
& {\makecell[b]{Median}}
& {\makecell[b]{Standard\\ Deviation}}
& {\makecell[b]{Max}}
& {\makecell[b]{Min}}\\
\midrule
Wage & 684 & 51944.77 & 49457.41 & 20872.87 & 184744.5 & 0.000\\
Age & 684 & 39.073 & 38.478 & 2.358 & 47.072 & 33.7\\
FDI & 684 & 340.857 & 195.093 & 509.194 & 4227.236 & 0.01\\
In(FDI) & 684 & 4.908 & 5.273 & 1.712 & 8.349 & -4.605\\
GDP Share & 684 & 0.2897 & 0.2053 & 0.5058 & 7.8108 & 0.000\\
Employment Share & 456 & 0.1982 & 0.1930 & 0.1505 & 0.7702 & 0.000\\
Working Hour & 684 & 46.7068 & 47.9 & 2.3476 & 49.1 & 41.3496\\
\bottomrule %
\end{tabularx}
\caption{Summary Statistics}
\end{table}
Max 列附近有几个奇怪的“l”字母,我不知道为什么。
答案1
您的代码的主要问题是环境tabularx
定义了 6 列,而需要 7 列定义。另一个不太严重的问题是(根据您发布的屏幕截图判断)您实际上并没有加载siunitx
定义S
列类型的包。修复这两个问题以及对如何定义列类型的合理猜测的结果L
显示在以下屏幕截图的上半部分。
由于您对最后 5 列使用了S
列类型,因此您可能还想使用此列类型对某些数字(例如,2 位小数)进行自动舍入。屏幕截图中的下表显示了如何实现此目的。(另外:显示 2 位小数而不是 4 位小数还有一个好处,就是不必将表格切换为\small
。)
\documentclass[11pt]{article}
\usepackage[T1]{fontenc}
\usepackage{booktabs, makecell, tabularx, siunitx}
\newcolumntype{L}{>{\raggedright\arraybackslash\hangindent1em\hangafter1}X}%?
\begin{document}
\begin{table}[!h]
\setlength\tabcolsep{4pt} % default value: 6pt
\sisetup{group-digits=false}
\small
\begin{tabularx}{\linewidth}{@{}
L
c
*{3}{S[table-format= 5.4]}
S[table-format= 6.4]
S[table-format=-1.4]
@{} }
\toprule
Variables
& {\makecell[t]{No.\ of\\ obs.}}
& {\makecell[t]{Mean}}
& {\makecell[t]{Median}}
& {\makecell[t]{Std.\\ Dev.}}
& {\makecell[t]{Max}}
& {\makecell[t]{Min}}\\
\midrule
Wage & 684 &51944.77 & 49457.41 & 20872.87 & 184744.5 & 0.000\\
Age & 684 & 39.073 & 38.478 & 2.358 & 47.072 & 33.7 \\
FDI & 684 & 340.857 & 195.093 & 509.194 & 4227.236 & 0.01 \\
ln(FDI) & 684 & 4.908 & 5.273 & 1.712 & 8.349 & -4.605\\
GDP Share & 684 & 0.2897& 0.2053& 0.5058 & 7.8108 & 0.000\\
Employment Share& 456 & 0.198 & 0.1930& 0.1505 & 0.7702 & 0.000\\
Working Hours & 684 & 46.7068 &47.9 & 2.347 & 49.1 & 41.3496\\
\bottomrule
\end{tabularx}
\caption{Summary Statistics}
\bigskip\bigskip
\sisetup{round-mode=places,round-precision=2}
\normalsize
\begin{tabularx}{\linewidth}{@{}
L
c
*{3}{S[table-format= 5.2]}
S[table-format= 6.2]
S[table-format=-1.2]
@{} }
\toprule
Variables
& {\makecell[t]{No.\ of\\ obs.}}
& {\makecell[t]{Mean}}
& {\makecell[t]{Median}}
& {\makecell[t]{Std.\\ Dev.}}
& {\makecell[t]{Max}}
& {\makecell[t]{Min}}\\
\midrule
Wage & 684 &51944.77 & 49457.41 & 20872.87 & 184744.5 & 0.000\\
Age & 684 & 39.073 & 38.478 & 2.358 & 47.072 & 33.7 \\
FDI & 684 & 340.857 & 195.093 & 509.194 & 4227.236 & 0.01 \\
ln(FDI) & 684 & 4.908 & 5.273 & 1.712 & 8.349 & -4.605\\
GDP Share & 684 & 0.2897& 0.2053& 0.5058 & 7.8108 & 0.000\\
Employment Share& 456 & 0.198 & 0.1930& 0.1505 & 0.7702 & 0.000\\
Working Hours & 684 & 46.7068 &47.9 & 2.3476& 49.1 & 41.3496\\
\bottomrule
\end{tabularx}
\caption{Automatic rounding of numbers enabled}
\end{table}
\end{document}