按垂直线对 apa7 表的行进行分组

按垂直线对 apa7 表的行进行分组

APA 风格鼓励在需要时用水平线对列进行分组,我在环境\cmidrule(r){...}中就是这么做的tabular

这是我目前拥有的:

在此处输入图片描述

通过这个 MWE,我正在使用。(我正在使用booktabs以下这个答案

\documentclass[man]{apa7}
\usepackage[american]{babel}
\usepackage{booktabs}

\title{sketchpad}
\author{Someone}
\date{Someday}

\begin{document}

\begin{table}
  \caption{Some table}
  \label{tab:mytable}
  \begin{tabular}{@{}lccccc@{}}
  \toprule
  \multicolumn{2}{c}{Datasets} & \multicolumn{3}{c}{Sample characteristics} \\
  \cmidrule(r){1-2}\cmidrule(l){3-5}
  Name & Main measure & N participants & \% Female & Mean age \\ \midrule 
  First one & T1 & 111 & 11 & 10 \\
  Second one & T2 & 222 & 22 & 20 \\
  Third one & T3 & 333 & 33 & 30 \\
  Fourth one & T4 & 444 & 44 & 40 \\
   \bottomrule

\end{tabular}
\end{table}

\end{document}

但是,我需要按如下方式对行进行分组(在 MS Word 中我能得到的最接近的方法),其中行是用垂直线分组的?

在此处输入图片描述

我怎样才能做到这一点?

提前致谢。

答案1

与。{NiceTabular}nicematrix

那个环境有一个first-col我在这里使用的密钥。

nicematrix在行、列和单元格下创建 PGF/Tikz 节点,并且可以在\CodeAfter构建数组后使用这些节点用 Tikz 绘制您想要的任何规则。

\documentclass[man]{apa7}
\usepackage[american]{babel}
\usepackage{booktabs}
\usepackage{nicematrix,tikz}

\shorttitle{}
\title{sketchpad}
\author{Someone}
\date{Someday}

\begin{document}

\begin{table}
  \caption{Some table}
  \label{tab:mytable}
  \begin{NiceTabular}{ccccc@{}}[first-col]
  \toprule
 & \multicolumn{2}{c}{Datasets} & \multicolumn{3}{c}{Sample characteristics} \\
  \cmidrule(r){2-3}\cmidrule(l){4-6}
   & Name & Main measure & N participants & \% Female & Mean age \\ \midrule
\Block{2-1}{\rotate Group A} & First one & T1 & 111 & 11 & 10 \\
 & Second one & T2 & 222 & 22 & 20 \\\addlinespace[1ex]
\Block{2-1}{\rotate Group B} & Third one & T3 & 333 & 33 & 30 \\
  & Fourth one & T4 & 444 & 44 & 40 \\
   \bottomrule
\CodeAfter 
  \begin{tikzpicture}
     \draw [shorten > = 4pt, shorten < = 4pt] (3-|1) -- (5-|1) ;
     \draw [shorten > = 4pt, shorten < = 4pt] (5-|1) -- (7-|1) ;
  \end{tikzpicture}
\end{NiceTabular}
\end{table}

\end{document}

您需要多次编译(因为nicematrix在后台使用 PGF/Tikz 节点)。

上述代码的输出

答案2

解决方案bigdelim如下multirow

\documentclass[man]{apa7}
\usepackage[american]{babel}
\usepackage{booktabs}
\usepackage{bigdelim, rotating}
\shorttitle{}
\title{sketchpad}
\author{Someone}
\date{Someday}

\begin{document}

\begin{table}
  \caption{Some table}
  \label{tab:mytable}
  \begin{tabular}{@{}rccccc@{}}
  \toprule
 & \multicolumn{2}{c}{Datasets} & \multicolumn{3}{c}{Sample characteristics} \\
  \cmidrule(r){2-3}\cmidrule(l){4-6}
   & Name & Main measure & N participants & \% Female & Mean age \\ \midrule
\ldelim|{2.2}{*}[\rotatebox{90}{\enspace\bfseries\footnotesize \makebox[0pt]{Group A}}] & First one & T1 & 111 & 11 & 10 \\
 & Second one & T2 & 222 & 22 & 20 \\\addlinespace[1ex]
\ldelim|{2.2}{*}[\rotatebox{90}{\bfseries\footnotesize \makebox[0pt]{\enspace Group B}}] & Third one & T3 & 333 & 33 & 30 \\
  & Fourth one & T4 & 444 & 44 & 40 \\
   \bottomrule
\end{tabular}
\end{table}

\end{document}

在此处输入图片描述

相关内容