我想将 csv 读入我定义的表中,如下所示:
\begin{table}[bp]
\centering
\caption{Reading csv.}
\label{table:csv}
\begin{tabular}{cccc}
\toprule
\multirow{2}{1.4cm}{\parbox{1\linewidth}{\vspace{1mm}A}} & \multirow{2}{0.9cm}{\parbox{1\linewidth}{\vspace{1mm} \centering B}} & \multicolumn{2}{c}{C} \\ \cmidrule{3-4}
& & D & E \\ \midrule
A0 & B0 & D0 & E0 \\
A1 & B1 & D1 & E1 \\
A2 & B2 & D2 & E2 \\
\bottomrule
\end{tabular}
\end{table}
.csv 如下所示:
,B,C,
,,D,E
A0,B0,D0,E0
A1,B1,D1,E1
A2,B2,D2,E2
表格看起来应该是这样的:
- 我如何读取 .csv?
- 如何才能使 A 位于列的中心?
- .csv 是否应包含表格的标题(A、B、C、D 和 E)或者是否应仅来自乳胶?
谢谢您的帮助
编辑:如果.csv 看起来像这样,会更容易/更好吗?
A,B,D,E
A0,B0,D0,E0
A1,B1,D1,E1
A2,B2,D2,E2
答案1
这是一种使用的方法datatool
:
\documentclass{article}
\usepackage{datatool,booktabs}
\begin{filecontents*}[overwrite]{table_data.csv}
A,B,D,E
A0,B0,D0,E0
A1,B1,D1,E1
A2,B2,D2,E2
\end{filecontents*}
\begin{document}
\begin{table}
\DTLloaddb{tabledata}{table_data.csv}% Load CSV data
\centering
\caption{Reading csv.}
\begin{tabular}{ c c c c }
\toprule
& & \multicolumn{2}{c}{C} \\
\cmidrule{3-4}
A & B & D & E \\
\midrule
\DTLforeach{tabledata}{%
\Acol=A,
\Bcol=B,
\Dcol=D,
\Ecol=E%
}{%
\Acol & \Bcol & \Dcol & \Ecol \\
}
\\[-\normalbaselineskip] \bottomrule
\end{tabular}
\end{table}
\end{document}