我正在尝试将两个表格以两列格式并排放置。但我收到了错误
! 缺失数字,视为零。l l.460 \end{tabular*} }
不幸的是,它没有告诉我哪里出了问题。有人能帮我修复下面的代码吗
\begin{table*}
\setlength{\tabcolsep}{2.5pt}
\parbox{0.5\textwidth}{
\centering
\caption{Data1}
\label{tab:res1}
\begin{tabular*}{l*{6}{c}}
\hline \\
Baseline & SMC & RMC & PMF & MOD & SCA & RSR \\
\hline \\
M1 & 0.641 & 0.772 & 0.333 & 0.314 & 0.305 & 0.356 \\
M2 & 0.301 & 0.372 & 0.853 & 0.814 & 0.805 & 0.846 \\
\hline
\end{tabular*} }
\hfill
\parbox{0.5\textwidth}{
\centering
\caption{Data 2}
\label{tab:res2}
\begin{tabular*}{*{6}{c}}
\hline \\
SMC & RMC & PMF & MOD & SCA & RSR \\
\hline \\ %[-1.55ex]
0.131 & 0.272 & 0.663 & 0.634 & 0.635 & 0.736 \\
0.311 & 0.362 & 0.853 & 0.564 & 0.555 & 0.866 \\
\hline
\end{tabular*} }
\end{table*}
答案1
您的问题已通过评论解决,但我会按照以下方式写出您的表格:
\documentclass[twocolumn]{article}
\usepackage{booktabs, tabularx}
\usepackage[skip=1ex]{caption}
\usepackage{siunitx}
\usepackage{lipsum}
\begin{document}
\begin{table*}
\setlength\tabcolsep{5pt}
\begin{tabularx}{\linewidth}{@{}*{2}{>{\centering\arraybackslash}X}@{}}
\caption{Data1}
\label{tab:res1}
\begin{tabular}{l*{6}{c}}
\toprule
Baseline & SMC & RMC & PMF & MOD & SCA & RSR \\
\midrule
M1 & 0.641 & 0.772 & 0.333 & 0.314 & 0.305 & 0.356 \\
M2 & 0.301 & 0.372 & 0.853 & 0.814 & 0.805 & 0.846 \\
\bottomrule
\end{tabular}
&
\caption{Data 2}
\label{tab:res2}
\begin{tabular}{*{6}{c}}
\toprule
SMC & RMC & PMF & MOD & SCA & RSR \\
\midrule
0.131 & 0.272 & 0.663 & 0.634 & 0.635 & 0.736 \\
0.311 & 0.362 & 0.853 & 0.564 & 0.555 & 0.866 \\
\bottomrule
\end{tabular}
\end{tabularx}
\end{table*}
\begin{table*}
\sisetup{table-format=1.3}
\setlength\tabcolsep{5pt}
\begin{tabularx}{\linewidth}{@{}*{2}{>{\centering\arraybackslash}X}@{}}
\caption{Data1}
\label{tab:res1}
\begin{tabular}{l*{6}{S}}
\toprule
Baseline & {SMC}& {RMC} & {PMF} & {MOD} & {SCA} & {RSR} \\
\midrule
M1 & 0.641 & 0.772 & 0.333 & 0.314 & 0.305 & 0.356 \\
M2 & 0.301 & 0.372 & 0.853 & 0.814 & 0.805 & 0.846 \\
\bottomrule
\end{tabular}
&
\caption{Data 2}
\label{tab:res2}
\begin{tabular}{*{6}{S}}
\toprule
{SMC} & {RMC} & {PMF} & {MOD} & {SCA} & {RSR} \\
\midrule
0.131 & 0.272 & 0.663 & 0.634 & 0.635 & 0.736 \\
0.311 & 0.362 & 0.853 & 0.564 & 0.555 & 0.866 \\
\bottomrule
\end{tabular}
\end{tabularx}
\end{table*}
\end{document}
第二个示例是使用包中S
的列siunitx
将数字在小数点对齐。由于表中的所有数字都具有相同的位数,因此表格没有差异。但是,如果您有例如带有两位整数部分的数字,它可能会变得方便。然后您需要将 S 列格式更改为table-format=2.3
(其中2
是整数位数和3
小数位数)。