![表の末尾にある余分な列を削除する方法](https://rvso.com/image/476250/%E8%A1%A8%E3%81%AE%E6%9C%AB%E5%B0%BE%E3%81%AB%E3%81%82%E3%82%8B%E4%BD%99%E5%88%86%E3%81%AA%E5%88%97%E3%82%92%E5%89%8A%E9%99%A4%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95.png)
パッケージを使用して 4 列のテーブルを作成したいと思います\usepackage[flushleft]{threeparttable}
。テーブルは以下のコードに基づいています。
\begin{table} [h]
\caption{Main results after endogeneity correction}
\label{tab:main_results_endog}
\centering
\SingleSpacedXI
\begin{subtable}[c]{\textwidth}
\caption{Cost analysis \label{tbl:main_results_cost}}
\centering
\begin{threeparttable}
\begin{tabular}{p{0.35\textwidth}lcp{0.35\textwidth}lcp{0.35\textwidth}lcp{0.35\textwidth}c}
\hline\hline
& MRO & Repair & Maintenance \\ \hline
$XXX$ & $-0.070^{***}$ & $-0.098^{***}$ & XXX \\
& (0.0032) & (0.0033) & XXX \\
Car attributes controls & Yes & Yes & Yes \\
Driver attributes controls & Yes & Yes & Yes \\
$R^2$ & 0.286 & 0.296 & XXX \\
\# Observations & 19,410,026 & 19,410,026 & XXX \\ \hline\hline
\end{tabular}
\begin{tablenotes}
\item Note: Standard errors in parentheses (* p $<$ 0.05, ** p $<$ 0.01, *** p $<$ 0.001)
\end{tablenotes}
\end{threeparttable}
\end{subtable}
\quad%
\begin{subtable}[c]{\textwidth}
\caption{Frequency analysis \label{tbl:main_results_frequency}}
\centering
\begin{threeparttable}
\begin{tabular}{p{0.35\textwidth}lcp{0.35\textwidth}lcp{0.35\textwidth}lcp{0.35\textwidth}c}
\hline\hline
& MRO & Repair & Maintenance \\ \hline
$XXX$ & $0.055^{***}$ & $0.052^{***}$ & XXX \\
& (0.0025) & (0.0025) & XXX \\
Car attributes controls & Yes & Yes & Yes \\
Driver attributes controls & Yes & Yes & Yes \\
$R^2$ & 0.266 & 0.286 & XXX \\
\# Observations & 18,522,387 & 18,522,387 & XXXX \\ \hline\hline
\end{tabular}
\begin{tablenotes}
\item Note: Standard errors in parentheses (* p $<$ 0.05, ** p $<$ 0.01, *** p $<$ 0.001)
\end{tablenotes}
\end{threeparttable}
\end{subtable}
\end{table}
コードは以下の表を出力します。最後に余分な列があるのはなぜですか? どうすれば削除できますか?
答え1
現在、両方のtabular
環境に11列を指定しています。両方のテーブルには実際には4列しかないため、書式設定の問題を修正する最善の方法は、
\begin{tabular}{p{0.35\textwidth}lcp{0.35\textwidth}lcp{0.35\textwidth}lcp{0.35\textwidth}c}
に
\begin{tabular}{p{0.35\textwidth}lcp{0.35\textwidth}}
もちろん、これは残りの 4 つの列の仕様に問題がないことを前提としています。問題がある場合は、自由にもっと良い選択肢を考え出してください。
追加コメント3つ:
パッケージの仕組みをほとんど使用していないので
threeparttable
、オーバーヘッドが発生しないようにします。テーブルがテキスト ブロック内に収まるようにする作業を簡素化するには、環境から 環境 (ターゲット幅は)
tabular
に切り替えて、の2 番目のインスタンスを に置き換えます。tabularx
\textwidth
p{0.35\textwidth}
X
煩雑に見えるディレクティブを削除し、パッケージ
\hline\hline
のルール描画マクロ、、およびに置き換えます。booktabs
\toprule
\midrule
\bottomrule
\documentclass{article} % or some other suitable document class
\usepackage{subcaption,booktabs,tabularx}
\begin{document}
\begin{table}[h]
\caption{Main results after endogeneity correction}
\label{tab:main_results_endog}
% \SingleSpacedXI % huh?
\begin{subtable}{\textwidth}
\caption{Cost analysis}
\label{tbl:main_results_cost}
\begin{tabularx}{\textwidth}{@{} p{0.35\textwidth} l c X @{}}
\toprule
& MRO & Repair & Maintenance \\
\midrule
\textit{XXX} & $-0.070^{***}$ & $-0.098^{***}$ & XXX \\
& (0.0032) & (0.0033) & XXX \\
\addlinespace
Car attributes controls & Yes & Yes & Yes \\
Driver attributes controls & Yes & Yes & Yes \\
$R^2$ & 0.286 & 0.296 & XXX \\
\# Observations & 19,410,026 & 19,410,026 & XXX \\
\bottomrule
\end{tabularx}
\smallskip\footnotesize
Note: Standard errors in parentheses; $^{*}$ $p < 0.05$, $^{**}$ $p < 0.01$, $^{***}$ $p < 0.001$.
\end{subtable}
\bigskip\bigskip
\begin{subtable}{\textwidth}
\caption{Frequency analysis}
\label{tbl:main_results_frequency}
\begin{tabularx}{\textwidth}{@{} p{0.35\textwidth} l c X @{}}
\toprule
& MRO & Repair & Maintenance \\
\midrule
\textit{XXX} & $0.055^{***}$ & $0.052^{***}$ & XXX \\
& (0.0025) & (0.0025) & XXX \\
\addlinespace
Car attributes controls & Yes & Yes & Yes \\
Driver attributes controls & Yes & Yes & Yes \\
$R^2$ & 0.266 & 0.286 & XXX \\
\# Observations & 18,522,387 & 18,522,387 & XXXX \\
\bottomrule
\end{tabularx}
\smallskip\footnotesize
Note: Standard errors in parentheses; $^{*}$ $p < 0.05$, $^{**}$ $p < 0.01$, $^{***}$ $p < 0.001$.
\end{subtable}
\end{table}
\end{document}