
두 가지 주요 부분("Immigrants" 및 "Locals")으로 구성된 회귀 테이블이 있습니다. Immigrants 아래에 첫 번째 모델이 시작되는 지점("장애")부터 마지막 모델이 끝나는 지점("rate")까지의 작은 선을 넣고 "Locals" 아래에 같은 길이의 또 다른 선을 추가하고 싶습니다. 내 의도는 테이블의 두 부분을 더 잘 분리하는 것입니다. 그게 가능할까요? 내가 어떻게 해? 코드와 스크린샷을 추가하고 있습니다. 매우 감사합니다!
\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
의 줄을 잘라내어 열 3과 4 사이를 분리합니다.l
r
답변2
\cline
첫 번째 테이블 행 대신 또는 뒤에 명령 을 추가합니다 \midrule
(실제로 원하는 내용에 따라 다름). 예를 들어
& \multicolumn{2}{c}{Immigrants} & & \multicolumn{2}{c}{Locals} \\ \cline{2-3} \cline{5-6}
i-j
명령 의 숫자는 \cline{i-j}
"밑줄"을 그어야 하는 열을 지정합니다. 즉, 행은 열에서 시작하여 i
열에서 끝납니다 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}