
我有一個回歸表,其中有兩個主要部分(“移民”和“當地人”)。我想在移民下面放一條小線,從第一個模型開始的地方(“殘疾”)到最後一個模型結束的地方(“比率”),並在“當地人”下面放另一條長度相同的線。我的目的是更好地分離表格的兩個部分。有這種可能嗎?我該怎麼做?我正在添加我的程式碼和螢幕截圖。太感謝了!
\begin{table}[H]\centering
\def\sym#1{\ifmmode^{#1}\else\(^{#1}\)\fi}
\caption{Health}
\begin{tabular}{l*{5}{c}}
\toprule
&\multicolumn{2}{c}{Immigrants} & & \multicolumn{2}{c}{Locals} \\
\addlinespace
&\multicolumn{1}{c}{Disability}&\multicolumn{1}{c}{Offspring survival rate}& & \multicolumn{1}{c}{Disability}&\multicolumn{1}{c}{Offspring survival rate}\\
\midrule
Low & -0.00190 & -0.00525 & & 0.00185 & -0.00186 \\
& (-0.43) & (-0.40) & & (0.83) & (-0.36) \\
\addlinespace
High & -0.00865 & 0.00429 & & -0.00413 & -0.0207\sym{*} \\
& (-1.21) & (0.20) & & (-1.01) & (-2.24) \\
(另外,正如你所知,我在它們之間有一個額外的空列以創造更多空間)
答案1
使用\cline
提供的等效項booktabs
:
\documentclass{article}
\usepackage{booktabs}
\begin{document}
\begin{table}
\centering
\def\sym#1{\ifmmode^{#1}\else\(^{#1}\)\fi}%
\begin{tabular}{l*{4}{c}}
\toprule
& \multicolumn{2}{c}{Immigrants} & \multicolumn{2}{c}{Non-immigrants} \\
\cmidrule(lr){2-3}\cmidrule(lr){4-5}
& \multicolumn{1}{c}{Disability} & \multicolumn{1}{c}{Offspring survival rate} &
\multicolumn{1}{c}{Disability} & \multicolumn{1}{c}{Offspring survival rate} \\
\midrule
Low & -0.00190 & -0.00525 & 0.00185 & -0.00186 \\
& (-0.43) & (-0.40) & (0.83) & (-0.36) \\
\addlinespace
High & -0.00865 & 0.00429 & -0.00413 & -0.0207\sym{*} \\
& (-1.21) & (0.20) & (-1.01) & (-2.24) \\
\bottomrule
\end{tabular}
\end{table}
\end{document}
這選修的 (lr)
參數修剪左側和右側的\cmidrule
線,以便它們在第三列和第四列之間分開。l
r
答案2
新增\cline
命令而不是\midrule
第一個表行之後或之後(取決於您實際想要的內容)。例如
& \multicolumn{2}{c}{Immigrants} & & \multicolumn{2}{c}{Locals} \\ \cline{2-3} \cline{5-6}
i-j
指令中的數字\cline{i-j}
指定應加上「底線」的列,即該行從column 開始i
,到column 結束j
。
編輯:
如果您正在使用該包,請按照 @Werner 的建議booktabs
使用等效命令。\cmidrule
但請注意,該booktabs
套件修改了預設表格外觀,並且原始表格的某些功能不再產生令人滿意的結果(例如垂直表格規則)。話雖這麼說,使用booktabs
通常是更好的選擇。
答案3
除了使用套件中的一些畫線宏來booktabs
使表格具有“開放”的外觀之外,您還應該
使表格不超過文字區塊的寬度;這可以透過使用
tabularx
環境在字串中插入換行符號來完成Offspring survival rate
將數字資料與各自的小數點對齊,並使用適當的
-
(減號)符號而不是破折號來表示負數;這可以透過載入dcolumn
套件並使用列類型來完成D
。
\documentclass{article}
\usepackage{booktabs,tabularx,dcolumn}
\newcolumntype{d}[1]{D..{#1}}
\newcolumntype{C}{>{\centering\arraybackslash}X}
\newcommand\mc[1]{\multicolumn{1}{C}{#1}} % shortcut macro
\def\sym#1{\ifmmode^{#1}\else\(^{#1}\)\fi}
\begin{document}
\begin{table}
\caption{Health}
\begin{tabularx}{\textwidth}{ l *{4}{d{2.5}} }
\toprule
& \multicolumn{2}{c}{Immigrants} & \multicolumn{2}{c}{Non-immigrants} \\
\cmidrule(lr){2-3}\cmidrule(l){4-5}
& \mc{Disability} & \mc{Offspring survival rate}
& \mc{Disability} & \mc{Offspring survival rate} \\
\midrule
Low &-0.00190 & -0.00525 & 0.00185 & -0.00186 \\
& (-0.43) & (-0.40) & (0.83) & (-0.36) \\
\addlinespace
High & -0.00865 & 0.00429 & -0.00413 & -0.0207\sym{*} \\
& (-1.21) & (0.20) & (-1.01) & (-2.24) \\
\bottomrule
\end{tabularx}
\end{table}
\end{document}