額外的對齊選項卡已更改為 \cr。使用表格、表格和調整大小框

額外的對齊選項卡已更改為 \cr。使用表格、表格和調整大小框

我已經審查了有關該主題的所有其他線程,但無法弄清楚。這一定是我完全想念的東西。

我收到上面的錯誤“額外對齊選項卡已更改為 \cr.}”

這是完整的可重現程式碼片段

\begin{table}[h!]
    \resizebox{5in}{!}{
        \begin{tabular}[h!]{|c||c|c|c|||c|c|c|}
            \hline
            \multicolumn{}{|c||}{Dataset} &
            \multicolumn{3}{c|||}{A} &
            \multicolumn{3}{c|}{B} &  
            \hline


            \bfseries Year & \bfseries parameter & \bfseries gof & \bfseries p-value & \bfseries parameter & \bfseries gof & \bfseries p-value \\
            \hline


1998 & 1.2661         & 0.4046   & 0.57         & 1.2889            & 0.3214      & 0.7             \\ \hline
1999 & 1.2685         & 0.4049   & 0.58         & 1.2913            & 0.3225      & 0.71            \\ \hline
2000 & 1.2681         & 0.4053   & 0.57         & 1.2942            & 0.321       & 0.71            \\ \hline
2001 & 1.2679         & 0.4082   & 0.56         & 1.2896            & 0.3208      & 0.71            \\ \hline
2002 & 1.2666         & 0.4098   & 0.55         & 1.2907            & 0.321       & 0.71            \\ \hline
2003 & 1.2673         & 0.4096   & 0.55         & 1.2849            & 0.3203      & 0.71            \\ \hline
2004 & 1.2678         & 0.409    & 0.57         & 1.2866            & 0.3187      & 0.72            \\ \hline

        \end{tabular}
    }
    \caption[stuff]{morestuff}
    \label{table:all.models}
\end{table}

有人看得到我看不見的東西嗎?

先感謝您!

答案1

錯誤訊息的直接來源是行

\multicolumn{3}{c|}{B} &

它應該是

\multicolumn{3}{c|}{B} \\

另外兩個觀察:

  • \multicolumn{}{|c||}{Dataset}也不正確。它應該是或者\multicolumn{1}{|c||}{Dataset},更簡單地說,Dataset.

  • [h!]中的選項\begin{tabular}[h!]毫無意義,直接被忽略。有效選項為t(“頂部”)、c(“中心”——預設值)和b(“底部”)。


附錄: 如果這是我的表,我會努力給它一個更開放的“外觀”,主要是通過省略所有垂直線並使用更少但間距良好的水平線。不需要\resizebox“大錘”。請改用tabular*環境。我也不會粗體字標題單元格,我會為表格的標題材料提供更多結構,並將數字列中的數字與各自的小數標記對齊。

這些想法在下面的第二個表中實現。

在此輸入影像描述

\documentclass{article}
\usepackage{graphicx}

\usepackage{booktabs,siunitx}
\begin{document}
\begin{table}[h!]
\resizebox{5in}{!}{%
\begin{tabular}[h!]{|c||c|c|c||c|c|c|}
\hline
Dataset &
\multicolumn{3}{c||}{A} &
\multicolumn{3}{c|}{B} \\  
\hline
\bfseries Year & \bfseries parameter & 
\bfseries gof & \bfseries p-value & 
\bfseries parameter & \bfseries gof & 
\bfseries p-value \\
\hline
1998 & 1.2661 & 0.4046 & 0.57 & 1.2889 & 0.3214 & 0.7  \\ \hline
1999 & 1.2685 & 0.4049 & 0.58 & 1.2913 & 0.3225 & 0.71 \\ \hline
2000 & 1.2681 & 0.4053 & 0.57 & 1.2942 & 0.321  & 0.71 \\ \hline
2001 & 1.2679 & 0.4082 & 0.56 & 1.2896 & 0.3208 & 0.71 \\ \hline
2002 & 1.2666 & 0.4098 & 0.55 & 1.2907 & 0.321  & 0.71 \\ \hline
2003 & 1.2673 & 0.4096 & 0.55 & 1.2849 & 0.3203 & 0.71 \\ \hline
2004 & 1.2678 & 0.409  & 0.57 & 1.2866 & 0.3187 & 0.72 \\ \hline
\end{tabular}
}% end of scope of \resizebox instruction
\caption[stuff]{morestuff}
\label{table:all.models}
\end{table}

\begin{table}[h!]
\setlength\tabcolsep{0pt}
\begin{tabular*}{5in}{@{\extracolsep{\fill}} l 
    *{2}{*{2}{S[table-format=1.4]}S[table-format=1.2]} }
\toprule
Year & \multicolumn{6}{c}{Dataset} \\
\cmidrule{2-7}
& \multicolumn{3}{c}{A} & \multicolumn{3}{c}{B} \\  
\cmidrule{2-4} \cmidrule{5-7}
& {Parameter} & {gof} & {p-value} & {Parameter} & {gof} & {p-value} \\
\midrule
1998 & 1.2661 & 0.4046 & 0.57 & 1.2889 & 0.3214 & 0.7  \\ 
1999 & 1.2685 & 0.4049 & 0.58 & 1.2913 & 0.3225 & 0.71 \\ 
2000 & 1.2681 & 0.4053 & 0.57 & 1.2942 & 0.321  & 0.71 \\ 
2001 & 1.2679 & 0.4082 & 0.56 & 1.2896 & 0.3208 & 0.71 \\ 
2002 & 1.2666 & 0.4098 & 0.55 & 1.2907 & 0.321  & 0.71 \\ 
2003 & 1.2673 & 0.4096 & 0.55 & 1.2849 & 0.3203 & 0.71 \\ 
2004 & 1.2678 & 0.409  & 0.57 & 1.2866 & 0.3187 & 0.72 \\ \bottomrule
\end{tabular*}
\caption{A much more ``open'' look}
\label{table:another_look}
\end{table}
\end{document}

答案2

無關:

我會用以下方式設計你的桌子:

在此輸入影像描述

(紅線表示文字邊框)

\documentclass{article}
\usepackage{booktabs, % for nicer horizontal rules (\toprule, \cmidrule, \midrule,\bottomrule)
            makecell} % for column headers (\thesd)
\renewcommand\theadfont{\bfseries\small}
\renewcommand\theadgape{}
\usepackage{siunitx}  % for S column type: numbers are aligned at decimal points

\begin{document}
    \begin{table}[h!]
    \setlength\tabcolsep{0pt}
\begin{tabular*}{\linewidth}{@{\extracolsep{\fill}}
                         c
                    *{2}{S[table-format=1.4]}
                         S[table-format=1.2]
                    *{2}{S[table-format=1.4]}
                         S[table-format=1.2]
                            }
    \toprule
Dataset & \multicolumn{3}{c}{A} & \multicolumn{3}{c}{B}     \\
    \cmidrule{2-4}\cmidrule{5-7}
\thead{Year}    & {\thead{parameter}} & {\thead{gof}} & {\thead{p-value}}
                & {\thead{parameter}} & {\thead{gof}} & {\thead{p-value}} \\
    \midrule
1998 & 1.2661   & 0.4046   & 0.57   & 1.2889    & 0.3214    & 0.7   \\
1999 & 1.2685   & 0.4049   & 0.58   & 1.2913    & 0.3225    & 0.71  \\
2000 & 1.2681   & 0.4053   & 0.57   & 1.2942    & 0.321     & 0.71  \\
2001 & 1.2679   & 0.4082   & 0.56   & 1.2896    & 0.3208    & 0.71  \\
2002 & 1.2666   & 0.4098   & 0.55   & 1.2907    & 0.321     & 0.71  \\
2003 & 1.2673   & 0.4096   & 0.55   & 1.2849    & 0.3203    & 0.71  \\
2004 & 1.2678   & 0.409    & 0.57   & 1.2866    & 0.3187    & 0.72  \\
    \bottomrule
    \end{tabular*}
\caption[stuff]{morestuff}
\label{table:all.models}
    \end{table}
\end{document}

相關內容