Pandas read_excel() - Excel-Datei in Python lesen
Wir können die Funktion read_excel() des pandas-Moduls verwenden, um die Excel-Daten in ein DataFrame-Objekt zu lesen. Wenn Sie sich ein Excel-Blatt ansehen, ist es eine zweidimensionale Tabelle. Das DataFrame-Objekt repräsentiert ebenfalls eine zweidimensionale tabellarische Datenstruktur.
1. Pandas read_excel() Beispiel
Angenommen, wir haben eine Excel-Datei mit zwei Arbeitsblättern - Mitarbeiter und Autos. Die oberste Zeile enthält die Überschrift der Tabelle.
Hier ist das Beispiel, um die Daten des “Mitarbeiter”-Blattes zu lesen und auszugeben.
import pandas
excel_data_df = pandas.read_excel('records.xlsx', sheet_name='Employees')
print whole sheet data
print(excel_data_df)
Ausgabe :
EmpID EmpName EmpRole
0 1 Pankaj CEO
1 2 David Lee Editor
2 3 Lisa Ray Author
- Der erste Parameter ist der Name der Excel-Datei.
- Der Parameter sheet_name definiert das Blatt, das aus der Excel-Datei gelesen werden soll.
- Wenn wir das DataFrame-Objekt drucken, ist die Ausgabe eine zweidimensionale Tabelle. Sie ähnelt den Aufzeichnungen in einem Excel-Blatt.
2. Liste der Spaltenüberschriften der Excel-Tabelle
Wir können die Liste der Spaltenüberschriften mit der columns Eigenschaft des Dataframe-Objekts abrufen.
print(excel_data_df.columns.ravel())
Ausgabe :
['EmpID' 'EmpName' 'EmpRole']
3. Drucken einer Spalten-Daten
Wir können die Spaltendaten abrufen und sie in eine Liste von Werten umwandeln.
print(excel_data_df['EmpName'].tolist())
Ausgabe :
['Pankaj', 'David Lee', 'Lisa Ray']
4. Pandas read_excel() usecols Beispiel
Wir können die Spaltennamen angeben, die aus der Excel-Datei gelesen werden sollen. Das ist nützlich, wenn Sie sich nur für einige der Spalten des Excel-Blattes interessieren.
import pandas
excel_data_df = pandas.read_excel('records.xlsx', sheet_name='Cars', usecols=['Car Name', 'Car Price'])
print(excel_data_df)
Ausgabe :
Car Name Car Price
0 Honda City 20,000 USD
1 Bugatti Chiron 3 Million USD
2 Ferrari 458 2,30,000 USD
5. Excel-Datei ohne Kopfzeile lesen
Wenn das Excel-Dokument keine Kopfzeile hat, setzen Sie den Wert des Kopfzeilenparameters auf None.
excel_data_df = pandas.read_excel('records.xlsx', sheet_name='Numbers', header=None)
Wenn Sie den Kopfwert als Ganzzahl übergeben, sagen wir 3. Dann wird die dritte Zeile als Kopfzeile behandelt und die Werte werden ab der nächsten Zeile gelesen. Alle Daten vor der Kopfzeile werden verworfen.
6. Excel-Tabelle in Dict, CSV und JSON
Das DataFrame-Objekt verfügt über verschiedene Hilfsfunktionen, um die tabellarischen Daten in Dict-, CSV- oder JSON-Format zu konvertieren.
excel_data_df = pandas.read_excel('records.xlsx', sheet_name='Cars', usecols=['Car Name', 'Car Price'])
print('Excel Sheet to Dict:', excel_data_df.to_dict(orient='record'))
print('Excel Sheet to JSON:', excel_data_df.to_json(orient='records'))
print('Excel Sheet to CSV:\n', excel_data_df.to_csv(index=False))
Ausgabe :
Excel Sheet to Dict: [{'Car Name': 'Honda City', 'Car Price': '20,000 USD'}, {'Car Name': 'Bugatti Chiron', 'Car Price': '3 Million USD'}, {'Car Name': 'Ferrari 458', 'Car Price': '2,30,000 USD'}]
Excel Sheet to JSON: [{"Car Name":"Honda City","Car Price":"20,000 USD"},{"Car Name":"Bugatti Chiron","Car Price":"3 Million USD"},{"Car Name":"Ferrari 458","Car Price":"2,30,000 USD"}]
Excel Sheet to CSV:
Car Name,Car Price
Honda City,"20,000 USD"
Bugatti Chiron,3 Million USD
Ferrari 458,"2,30,000 USD"
7. Literaturverzeichnis
- pandas read_excel() API-Dokumentation

