Life Sciences csvsimple Paket

Das LaTeX-Paket csvsimple – Einführung und Anwendung

Was ist csvsimple?

Das Paket csvsimple ermöglicht das einfache Verarbeiten von CSV-Dateien (Comma Separated Values) in LaTeX. CSV-Dateien enthalten tabellarische Daten, bei denen die Werte durch Kommas oder andere Trennzeichen voneinander getrennt sind. Das Paket hilft, diese Daten in Tabellen darzustellen, zu filtern und gezielt zu formatieren.

csvsimple eignet sich besonders für:

Da csvsimple als leichtgewichtiges Paket konzipiert wurde, unterstützt es keine Sortierung oder Datenbankfunktionen. Falls komplexere Datenverarbeitung benötigt wird, kann alternativ das datatool-Paket verwendet werden.


Video


Folien

Folien


Beschreibung

Laden des Pakets

Das Paket wird in der Präambel eines LaTeX-Dokuments mit folgendem Befehl eingebunden:

\usepackage{csvsimple}

Alternativ existiert eine Erweiterung namens csvsimple-l3, die eine noch flexiblere Nutzung durch LaTeX3-Syntax bietet:

\usepackage{csvsimple-l3}

Grundlegende Befehle

  1. csvautotabular
    Erstellt automatisch eine Tabelle aus einer CSV-Datei, ohne dass eine detaillierte Formatierung erforderlich ist.

    \csvautotabular{datei.csv}
    
  2. csvreader
    Ermöglicht eine flexible Kontrolle über die Verarbeitung der CSV-Datei und erlaubt das gezielte Formatieren von Spalten.

    \csvreader[Optionen]{datei.csv}{Zuweisungen}{Befehl}
    
    • Optionen: Steuerung der Darstellung.
    • Zuweisungen: Spaltenwerte können benannten Variablen zugeordnet werden.
    • Befehl: Die eigentliche Verarbeitung der Datenzeilen.
  3. csvfilteraccept / csvfilterreject

    • Mit csvfilteraccept können bestimmte Zeilen in der Verarbeitung eingeschlossen werden.
    • Mit csvfilterreject werden Zeilen ausgeschlossen.
  4. Daten filtern
    Mit filter equal oder filter not equal können Daten gefiltert werden:

    \documentclass{article}
    \usepackage{csvsimple}
    
    \begin{document}
    \csvreader[filter equal={\Name}{Alice}]{studenten.csv}{Name=\Name}{\Name~}
    
    \csvreader[filter not equal={\Name}{Alice}]{studenten.csv}{Name=\Name}{\Name~}
    
    \end{document}

    Dieses Beispiel zeigt nur Studierende mit dem Namen Alice an beziehungsweise in der zweiten Anweisung alle Studierenden die nicht Alice heißen.


Beispiele & Anwendungen

Beispiel 1: Eine einfache Tabelle aus einer CSV-Datei

Angenommen, es gibt eine CSV-Datei studenten.csv mit folgendem Inhalt:

Name,Studiengang,Semester
Alice,Informatik,2
Bob,Maschinenbau,4
Carol,Physik,3
Dave,Mathematik,1

Die Datei kann mit csvautotabular als Tabelle ausgegeben werden:

\documentclass{article}
\usepackage{csvsimple}

\begin{document}

\csvautotabular{studenten.csv}

\end{document}

Das erzeugt eine Tabelle mit den Daten aus studenten.csv.

Beispiel 2: Selektive Ausgabe von Spalten

Falls nur Name und Studiengang angezeigt werden sollen, kann csvreader verwendet werden:

\documentclass{article}
\usepackage{csvsimple}

\begin{document}

\begin{tabular}{|l|c|}\hline%
\bfseries Name & \bfseries Studiengang
\csvreader[head to column names]{studenten.csv}{}%
{\\\Name & \Studiengang}%
\\\hline
\end{tabular}
\end{document}

Hier werden nur die Spalten Name und Studiengang übernommen, und die Spaltenüberschriften werden fett dargestellt.

Beispiel 3: Filtern nach bestimmten Kriterien

Angenommen, Sie möchten nur die Studierenden des 2. Semesters ausgeben:


\documentclass{article}
\usepackage{csvsimple}

\begin{document}

\textbf{Studierende im 2. Semester:}
\begin{itemize}
\csvreader[head to column names, filter equal={\Semester}{2}]{studenten.csv}{}{\item \Name}
\end{itemize}

\end{document}

Dieses Beispiel erstellt eine Aufzählungsliste mit den Namen der Studierenden, die sich im zweiten Semester befinden.

Beispiel 4: Individuelle Formatierung mit tabular

Falls eine detaillierte Tabellenformatierung gewünscht ist, kann csvreader mit tabular kombiniert werden:

\documentclass{article}
\usepackage{csvsimple}

\begin{document}

\begin{tabular}{|l|c|}\hline%
\bfseries Name & \bfseries Studiengang
\csvreader[head to column names]{studenten.csv}{}%
{\\\Name & \Studiengang}%
\\\hline
\end{tabular}
\end{document}

Diese Methode erlaubt volle Kontrolle über das Layout.

Beispiel 5: Arbeiten mit benutzerdefinierten Filtern

Sie können bestimmte Daten mit eigenen Bedingungen filtern:

\documentclass{article}
\usepackage{csvsimple}

\begin{document}

\csvreader[head to column names, filter test=\ifnumgreater{\Semester}{2}]{studenten.csv}{}{\Name~}

\end{document}

Dieses Beispiel zeigt alle Studierenden, die sich in einem Semester größer als 2 befinden.


Aufgaben & Übungen

Aufgabe 1: Erstellen Sie eine einfache Tabelle aus einer CSV-Datei

Erstellen Sie ein LaTeX-Dokument, das das csvsimple-Paket lädt und eine automatische Tabelle aus einer CSV-Datei einfügt.

Anforderungen:

  1. Erstellen Sie eine CSV-Datei studenten.csv mit den folgenden Daten:

    Name, Studiengang, Semester
    Alice, Informatik, 2
    Bob, Maschinenbau, 4
    Carol, Physik, 3
    Dave, Mathematik, 1
    
  2. Binden Sie diese CSV-Datei in ein LaTeX-Dokument ein.

  3. Nutzen Sie \csvautotabular, um die CSV-Datei automatisch als Tabelle darzustellen.

👉 Hinweis: Nutzen Sie den Befehl \begin{filecontents}{studenten.csv}, falls die CSV-Datei nicht extern vorhanden ist.

Aufgabe 2: Formatieren Sie eine CSV-Tabelle individuell

Erstellen Sie eine Tabelle aus der Datei studenten.csv, die nur die Namen und Studiengänge anzeigt. Formatieren Sie die Tabelle so, dass:

Anforderungen:

  1. Nutzen Sie \csvreader, um nur die Spalten Name und Studiengang auszugeben.
  2. Verwenden Sie das tabular-Umfeld für eine individuelle Formatierung.
  3. Passen Sie die Überschriften an (\bfseries für fette Schrift).
  4. Achten Sie auf eine saubere Struktur mit Rahmen (|l|c|).

Aufgabe 3: Filtern Sie eine CSV-Datei nach einer Bedingung

Erstellen Sie eine gefilterte Ausgabe der studenten.csv, die nur die Studierenden des 2. Semesters anzeigt.

Anforderungen:

  1. Verwenden Sie \csvreader mit der Option filter equal={\Semester}{2}.
  2. Geben Sie nur die Namen der Studierenden aus.
  3. Die Liste der Namen soll als einfache itemize-Liste dargestellt werden.

Hausaufgaben

Hausaufgabe 1 (Theoretisch): Verständnisfragen zu csvsimple

Beantworten Sie die folgenden Fragen in einem LaTeX-Dokument:

  1. Was ist das csvsimple-Paket und wofür wird es verwendet?
  2. Wie kann eine CSV-Datei direkt in LaTeX eingebunden werden?
  3. Welche Vorteile bietet \csvautotabular gegenüber \csvreader?
  4. Welche Möglichkeiten gibt es, Tabellen in LaTeX individuell zu formatieren?
  5. Wie kann man Daten aus einer CSV-Datei filtern?

👉 Antworten sollten in vollständigen Sätzen formuliert werden.

Hausaufgabe 2 (Praktisch): Erstellen Sie eine eigene CSV-Datei und formatieren Sie die Ausgabe

Erstellen Sie eine eigene CSV-Datei mit Buchinformationen und formatieren Sie die Ausgabe in einer individuellen Tabelle.

Anforderungen:

  1. Erstellen Sie eine CSV-Datei buecher.csv mit den Spalten:

    Titel, Autor, Jahr, Genre
    Der Prozess, Franz Kafka, 1925, Roman
    Faust, Johann Wolfgang von Goethe, 1808, Drama
    1984, George Orwell, 1949, Dystopie
    
  2. Erstellen Sie eine LaTeX-Tabelle, die:

    • Nur Titel und Autor ausgibt.
    • Fettgedruckte Spaltenüberschriften hat.
    • Einen Rahmen enthält.
annehmen ablehnen

Diese Website verwendet Cookies und Pixel-Tags, um Ihnen das beste Erlebnis auf unserer Website zu bieten. Durch die Nutzung dieser Website erklären Sie sich mit der Verwendung von Cookies einverstanden. mehr zum Thema Cookies und siehe auch Datenschutz