Pandas Table: DataFrames als Tabellen formatieren

Ein Python Pandas DataFrame kann genutzt werden, um Daten in Form einer Tabelle darzustellen. Zur strukturierten und übersichtlichen Darstellung von Datensätzen als Pandas Tables gibt es eine Reihe verschiedener Möglichkeiten.

Webhosting
Top-Hosting für Ihre Website
  • Flexibel: Hosting, das jedem Website-Traffic standhält
  • Verlässlich: Inklusive 24/7-Support und persönlicher Beratung
  • Sicher: Kostenloses SSL-Zertifikat, DDoS-Schutz und Backups

Standardanzeige eines Pandas DataFrame als Tabelle

Die einfachste Methode, einen Pandas DataFrame als Table anzuzeigen, ist die Verwendung der Python-print()-Funktion. Diese liefert Ihnen eine tabellenartige Darstellung des DataFrames zurück:

import pandas as pd
data = {
    'Name': ['Anna', 'Ben', 'Charlie', 'Diana'],
    'Alter': [23, 30, 35, 29],
    'Beruf': ['Ingenieurin', 'Lehrer', 'Arzt', 'Designer']
}
df = pd.DataFrame(data)
# DataFrame als Tabelle anzeigen
print(df)
python

Hier wird der Pandas DataFrame als einfache Table in der Konsole angezeigt. Die Ausgabe der Tabelle sieht wie folgt aus:

Name  Alter    Beruf
0      Anna     23  Ingenieurin
1    Ben     30      Lehrer
2   Charlie     35     Arzt
3     Diana     29    Designer
Hinweis

Wenn Sie Juypter Notebooks verwenden, benötigen Sie für die Anzeige Ihres Pandas DataFrame als Table nicht einmal die print()-Funktion. Ein einfacher Aufruf des DataFrames genügt, damit er Ihnen tabellarisch präsentiert wird.

Anzeige mit to_string() für vollständige Kontrolle

Die integrierte Pandas-Funktion DataFrame.to_string() wandelt einen DataFrame in einen Python-String um. Sie ermöglicht es, den gesamten Pandas DataFrame als Table anzuzeigen, auch wenn er sehr groß ist. Im Folgenden betrachten wir denselben DataFrame wie im ersten Beispiel:

# DataFrame als vollständige Tabelle anzeigen
print(df.to_string())
python

Die Ausgabe sieht folgendermaßen aus:

Name  Alter    Beruf
0      Anna     23  Ingenieurin
1    Ben     30      Lehrer
2   Charlie     35     Arzt
3     Diana     29    Designer

Verwendung von style zur Formatierung einer Tabelle

Pandas bietet auch eine integrierte Möglichkeit, DataFrames farblich zu markieren und zu formatieren: die style-Eigenschaft. Im Codebeispiel sollen die Maximalwerte des Beispieldatensatzes farblich markiert werden:

# DataFrame mit hervorgehobenen Maximalwerten anzeigen
df.style.highlight_max(axis=0)
python

In einem Jupyter Notebook wird der DataFrame mit farblich hervorgehobenen maximalen Werten angezeigt.

Verwendung von to_html() für Web-Frameworks

Mit DataFrame.to_html() können Sie Ihren DataFrame mit nur einem Funktionsaufruf als HTML-Tabelle darstellen, die in Webanwendungen direkt eingebunden werden kann. Hierfür rufen Sie die Funktion einfach auf dem DataFrame auf:

# DataFrame als HTML-Tabelle anzeigen
html_table = df.to_html()
print(html_table)
python

Als Resultat erhalten Sie HTML-Code. Diesen können Sie in Websites einbetten.

<table border="1" class="dataframe">
    <thead>
        <tr style="text-align: right;">
            <th></th>
            <th>Name</th>
            <th>Alter</th>
            <th>Beruf</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <th>0</th>
            <td>Anna</td>
            <td>23</td>
            <td>Ingenieurin</td>
        </tr>
        <tr>
            <th>1</th>
            <td>Ben</td>
            <td>30</td>
            <td>Lehrer</td>
        </tr>
        <tr>
            <th>2</th>
            <td>Charlie</td>
            <td>35</td>
            <td>Arzt</td>
        </tr>
        <tr>
            <th>3</th>
            <td>Diana</td>
            <td>29</td>
            <td>Designer</td>
        </tr>
    </tbody>
</table>
html
Hinweis

Ähnlich wie to_html() funktioniert die Pandas-Funktion DataFrame.to_markdown(). Als Resultat erhalten Sie hier statt HTML-Code eine Ausgabe im Markdown-Format, das in vielen Dokumentationswerkzeugen oder Blogs verwendet werden kann.

Verwendung von tabulate für verschiedene Tabellenausgaben

Mit dem externen Python-Modul tabulate kann man Pandas DataFrames in verschiedenen tabellarischen Formaten anzeigen. Unterstützt werden unter anderem Formate wie GitHub Flavored Markdown, reStructuredText oder einfacher Text. Das gewünschte Format wird einfach mit dem Parameter tablefmt übergeben. Im Folgenden soll der DataFrame als GitHub-Markdown angezeigt werden:

from tabulate import tabulate
# DataFrame als Tabelle im Markdown-Format anzeigen
print(tabulate(df, headers='keys', tablefmt='github'))
python

Folgendes Ergebnis wird ausgegeben:

|    | Name    |   Alter | Beruf       |
|----|---------|---------|-------------|
|  0 | Anna    |      23 | Ingenieurin |
|  1 | Ben     |      30 | Lehrer      |
|  2 | Charlie |      35 | Arzt        |
|  3 | Diana   |      29 | Designer    |
War dieser Artikel hilfreich?
Page top