如何将 csv 读入带有自定义标题的表格?

如何将 csv 读入带有自定义标题的表格?

我想将 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

表格看起来应该是这样的:

在此处输入图片描述

  1. 我如何读取 .csv?
  2. 如何才能使 A 位于列的中心?
  3. .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}

相关内容