由于多行而缺少列边框

由于多行而缺少列边框

我遇到了多行问题。由于我在末尾添加了一列,表格中的一些边框消失了,但我不知道原因。任何帮助都非常感谢!

\begin{table}
\centering
\begin{tabular}{|c|ccccc|c|}
    \hline
    \multirow{2}{*}{\textbf{Modello}} & \multicolumn{5}{c}{\textbf{F1-Score}} & \multirow{2}{*}{\textbf{Macro F1-Score}} \\
    & 7.7 - 7.9 & 8.0 - 8.2 & 8.3 - 8.5 & 8.6 - 8.8 & 8.9 - 9.1\\
    \hline
    L. Discriminant & 0.5 & 0.56 & 0.25 & 0.4 & 0.57 & 0.46 \\
    SVM & 0.5 & 0.6 & 0 & 0 & 0.8 & 0.38 \\
    KNN & 0.4 & 0.5 & 0.33 & 0 & 0 & 0.25\\
    GNB & 0 & 0.3 & 0.2 & 0 & 0 & 0.1\\
    Decision Tree & 0.67 & 0.86 & 0.73 & 0 & 0.86 & 0.62\\
    Random Forest & 0 & 0.56 & 0.46 & 0 & 0.5 & 0.30\\
    Extra Trees & 0.29 & 0.53 & 0.62 & 0 & 0 & 0.29\\
    \hline
\end{tabular}
\end{table}

在此处输入图片描述

答案1

这与 无关\multirow。尝试

\begin{tabular}{|c|c|}
\hline
1 & 2 \\
3 \\
\hline
\end{tabular}

要得到

在此处输入图片描述

&如果希望显示垂直规则,分隔符的数量应始终保持一致。您缺少一个。

我们能做得更好吗?当然可以。

\documentclass{article}
\usepackage{booktabs}
\usepackage{siunitx}

\sisetup{
  range-phrase=--,
  output-decimal-marker={,},
}

\begin{document}

\begin{table}[htp]
\centering

\setlength{\tabcolsep}{0pt}
\begin{tabular*}{\textwidth}{
  @{\extracolsep{\fill}}
  l
  *{3}{S[table-format=1.2]}
  S[table-format=1.1]
  *{2}{S[table-format=1.2]}
}
\toprule
Modello & \multicolumn{5}{c}{F1-Score} & {Macro F1-Score} \\
\cmidrule{2-6}
& \numrange{7.7}{7.9}
& \numrange{8.0}{8.2}
& \numrange{8.3}{8.5}
& \numrange{8.6}{8.8}
& \numrange{8.9}{9.1} \\
\midrule
L. Discriminant & 0.5  & 0.56 & 0.25 & 0.4 & 0.57 & 0.46 \\
SVM             & 0.5  & 0.6  & 0    & 0   & 0.8  & 0.38 \\
KNN             & 0.4  & 0.5  & 0.33 & 0   & 0    & 0.25 \\
GNB             & 0    & 0.3  & 0.2  & 0   & 0    & 0.1  \\
Decision Tree   & 0.67 & 0.86 & 0.73 & 0   & 0.86 & 0.62 \\
Random Forest   & 0    & 0.56 & 0.46 & 0   & 0.5  & 0.30 \\
Extra Trees     & 0.29 & 0.53 & 0.62 & 0   & 0    & 0.29 \\
\bottomrule
\end{tabular*}

\end{table}

\end{document}

我将 设置output-decimal-marker为逗号只是为了显示 的一个重要特征siunitx。如果您希望小数点为句点,请删除该设置。

在此处输入图片描述

答案2

表格中的“&”符号应保持一致。第二行末尾少了一个“&”。这两行应为:

    \hline
\multirow{2}{*}{\textbf{Modello}} 
    & \multicolumn{5}{c|}{\textbf{F1-Score}} & \multirow{2}{*}{\textbf{Macro F1-Score}} \\
    & 7.7 - 7.9 & 8.0 - 8.2 & 8.3 - 8.5 & 8.6 - 8.8 & 8.9 - 9.1 &   \\ & observe & on the end of line

经过此修正后,您的代码片段的结果为:

在此处输入图片描述

相关内容