Excel#
pandas unterstützt auch das Lesen von Tabellendaten, die in Dateien von Excel 2003 (und höher) gespeichert sind, entweder mit der Klasse ExcelFile
oder der Funktion pandas.read_excel
. Intern verwenden diese Werkzeuge die Zusatzpakete xlrd und openpyxl, um XLS- bzw. XLSX-Dateien zu lesen. Diese müssen separat von pandas mit pipenv installiert werden.
Um ExcelFile
zu verwenden, erstellt eine Instanz, indem ihr einen Pfad zu einer xls- oder xlsx-Datei übergebt:
[1]:
import pandas as pd
[2]:
xlsx = pd.ExcelFile('library.xlsx')
books = pd.read_excel(xlsx, 'books')
books
[2]:
Titel | Sprache | Autor*innen | Lizenz | Veröffentlichungsdatum | |
---|---|---|---|---|---|
0 | Python basics | en | Veit Schiele | BSD-3-Clause | 2021-10-28 |
1 | Jupyter Tutorial | en | Veit Schiele | BSD-3-Clause | 2019-06-27 |
2 | Jupyter Tutorial | de | Veit Schiele | BSD-3-Clause | 2020-10-26 |
3 | PyViz Tutorial | en | Veit Schiele | BSD-3-Clause | 2020-04-13 |
Wenn ihr mehrere Sheets einer Datei einlest, ist es schneller, die Excel-Datei zu erstellen, aber ihr könnt auch einfach den Dateinamen an pandas.read_excel
übergeben:
[3]:
books = pd.read_excel('library.xlsx', 'books')
books
[3]:
Titel | Sprache | Autor*innen | Lizenz | Veröffentlichungsdatum | |
---|---|---|---|---|---|
0 | Python basics | en | Veit Schiele | BSD-3-Clause | 2021-10-28 |
1 | Jupyter Tutorial | en | Veit Schiele | BSD-3-Clause | 2019-06-27 |
2 | Jupyter Tutorial | de | Veit Schiele | BSD-3-Clause | 2020-10-26 |
3 | PyViz Tutorial | en | Veit Schiele | BSD-3-Clause | 2020-04-13 |
Um Pandas-Daten im Excel-Format zu schreiben, müsst ihr zunächst einen ExcelWriter
erstellen und dann mit pandas.DataFrame.to_excel Daten in diesen schreiben:
[4]:
writer = pd.ExcelWriter('library.xlsx')
books.to_excel(writer, 'books')
writer.save()
Ihr könnt auch einen Dateipfad an to_excel
übergeben und so den ExcelWriter
umgehen:
[5]:
books.to_excel('library.xlsx')