XLSX in CSV in Python

Xlsx In Csv In Python



Python hat sich in den letzten Jahren zu einer der dominierenden Programmiersprachen entwickelt. Die Python-Community hat sich aufgrund der Popularität und Nützlichkeit von Python erheblich erweitert. Wir werden in diesem Artikel ausführlich darauf eingehen, wie man Python verwendet, um XLSX in CSV zu konvertieren. Wir sind uns bewusst, dass Excel-Dateien häufig verwendet werden, um Finanzanalysen durchzuführen, die Daten zu organisieren, Dateneingabe, Buchhaltung, Datenverwaltung, Diagramme und Grafiken zu erstellen usw. Wir bevorzugen jedoch meistens die Verwendung von CSV-Dateien für den Datenimport und -export. Ein Ansatz besteht darin, die strukturierten Daten mithilfe einer einfachen Textdatei zu übertragen.

Was ist eine Xslx-Datei?

Beim Erstellen von Tabellenkalkulationen in den neuesten Versionen von Excel verwendet Microsoft eine XLSX-Datei als Standarddateityp. Ähnlich wie beim DOCX-Dateityp von Word können wir die XLSX-Dateien mit einer Vielzahl von Anwendungen/Programmen öffnen.

Was ist eine CSV-Datei?

Das CSV-Dateiformat ist das, was wir verwenden können, um die tabellarischen Datenwerte in Tabellenkalkulationen und Datenbanken zu speichern. Die tabellarischen Daten, Text oder Text, werden als Klartext in einer CSV-Datei gespeichert. Ein Datensatz in der CSV-Datei ist der Datenwert, der in jeder Zeile der Datei gespeichert ist. Jeder Datensatz kann mehr als ein Feld haben, das durch Kommas getrennt ist.







Hauptunterschiede zwischen XLSX- und CSV-Dateien

Benutzer verwenden CSV und XLSX häufig synonym und sind sich im Allgemeinen der Unterschiede zwischen ihnen, ihrer grundlegenden Eigenschaften und ihrer Funktionsweise nicht bewusst. Sie dient lediglich als Informationsquelle für den Benutzer. Nahezu jedes Unternehmen und Unternehmen nutzt beides, um die Benutzer bei der Verwaltung, Aktualisierung und Speicherung der Daten für den Benutzer zu unterstützen. Im Folgenden sind einige wichtige Unterschiede zwischen XLSX- und CSV-Dateien aufgeführt, die Sie kennen sollten:



  • Das CSV-Format speichert tabellarische Daten in einer Trennzeichen-Textdatei mit der Erweiterung .csv. Während eine Excel- oder XLSX-Datei eine Tabellenkalkulation ist, die Dateien in ihrem proprietären Format speichert, nämlich. xls oder XLSX.
  • Excel-Dateien sind Binärdateien, die die Daten auf jedem Arbeitsblatt in einer Arbeitsmappe enthalten. Wohingegen CSV ein schlichtes und einfaches Textformat mit einer Folge von Datenwerten ist, die durch Kommas getrennt sind.
  • Datenoperationen können nicht auf CSV-Dateien ausgeführt werden. Sie können jedoch auf Excel-Dateien ausgeführt werden.
  • CSV-Dateien sind schneller und benötigen weniger Speicherplatz als XLSX-Dateien. Beim Importieren der Daten verbraucht Excel jedoch mehr Speicher.
  • Wenn wir CSV mit Excel vergleichen, können wir die CSV-Dateien in jedem Windows-Texteditor öffnen, während Excel-Dateien dies nicht können.

Wie kann eine XLSX-Datei mit Python in CSV konvertiert werden?

Eine XLSX-Datei kann in Python mit verschiedenen Methoden in eine CSV-Datei umgewandelt werden. Python enthält eine Vielzahl von Modulen und Funktionen, die uns bei der Bewältigung dieser Aufgabe unterstützen können. Hier gehen wir einige Methoden durch, mit denen die XLSX-Dateien in Python in CSV-Dateien konvertiert werden können.



Voraussetzungen für die Konvertierung von Excel in CSV

Die Installation der Anforderungen ist der erste Schritt. Wir verwenden die Module wie Combine Pandas, CSV und Openpyxl usw. in diesem Tutorial. Das Pandas-Paket von Python ermöglicht die Manipulation und Analyse von Daten. Pandas ist eine bekannte Bibliothek unter Python-Programmierern. Excel-Dateien können mit dem als Openpyxl bekannten Python-Paket gelesen und geschrieben werden. Wir werden uns nicht direkt mit dieser Bibliothek befassen. Pandas verwenden stattdessen intern Openpyxl.





Mit dem PyPI-Repository können wir beide Pakete installieren:

Methode 1: Konvertieren von XLSX in CSV mit dem Pandas-Modul

Beispiel 1: Konvertieren einer XLSX-Datei in CSV



Pandas ist ein Open-Source-Modul, das für die Programmiersprache Python entwickelt wurde, um die Daten zu manipulieren und zu analysieren. Um mit Zeitreihen und numerischen Tabellen zu arbeiten, bietet Pandas eine Vielzahl von Funktionen und Features. Mit Pandas können sowohl kleine als auch große Datensätze gelesen, gefiltert und neu angeordnet werden. Und die Ergebnisse können in einer Vielzahl von Formaten wie Excel, JSON und CSV erstellt werden. Wir verwenden die Methode read_excel() von Pandas, um eine Excel-Datei zu lesen, und die Methode to_csv(), um den DataFrame in eine CSV-Datei umzuwandeln.

Wir drucken unsere .csv-Datei als DataFrame, wie in der Ausgabe zu sehen ist. Das vorherige Skript konvertiert unsere XLSX-Datei in CSV und erstellt eine „salary.csv“-Datei im aktuellen Verzeichnis.

Beispiel 2: Konvertieren einer XLSX-Datei (mit mehreren Blättern) in CSV

Im folgenden Beispiel lesen wir zunächst die Blattnamen der Excel-Datei. Die Namen der einzelnen Blätter werden dann durchgeschleift und als eigenständige CSV-Dateien gespeichert. Das Skript speichert CSVs am selben Ort.

Wir verwenden eine Beispiel-XLSX-Datei mit zwei oder mehr Arbeitsblättern oder Tabellenkalkulationen.

Wie Sie sehen können, besteht unsere XLSX-Datei aus zwei Blättern (Blatt1 und Blatt2). Jetzt schreiben wir einen Code, um diese XLSX-Datei in CSV zu konvertieren.

Ausgabe:

Das Skript hat die XLSX-Datei mit zwei Blättern erfolgreich in eine einzelne CSV-Datei mit einem einzelnen Blatt konvertiert.

Beispiel 3: Konvertieren mehrerer XLSX-Dateien in separate CSV-Dateien

Stellen Sie sich ein Szenario vor, in dem Sie mehrere Excel-Dateien in Ihrem Arbeitsverzeichnis in CSV konvertieren müssen. Sie könnten diese Methode anwenden. Wir gehen davon aus, dass jede Datei nur ein Blatt enthält. Dann erweitern wir unsere Methode, um mehrere Dateien und mehrere Blätter zu verarbeiten. Der folgende Python-Code verwendet das Glob-Standardmodul. Wir passen die Dateipfade mithilfe von Mustern mit Glob an. Es vergleicht alle Dateien mit der Erweiterung .xlsx im Arbeitsverzeichnis. Danach entwickeln wir eine Funktion, die die Excel-Dateien ausliest und als CSV-Dateien speichert. Wir rufen diese Funktion für jeden gefundenen Dateipfad auf.

Dieses vorherige Skript konvertiert alle xlsx-Dateien im aktuellen Verzeichnis in CSV-Dateien.

Jetzt konvertieren wir die XLSX-Dateien mit mehreren Tabellenkalkulationen in CSV. Dies ist höchstwahrscheinlich der schwierige Teil. Drei Excel-Dateien befinden sich in unserem Arbeitsverzeichnis. Außerdem bestehen einige von ihnen aus mehr als einem Blatt. Wir zielen auf:

  1. Erstellen Sie ein Verzeichnis für jede Tabellenkalkulationsdatei,
  2. Konvertieren Sie die Excel-Dateiblätter in CSV und sie sollten im neu erstellten Verzeichnis aufbewahrt werden.

Das Skript konvertiert die XLSX mit Einzel- und Mehrfachblättern in separate CSV-Dateien und speichert sie in neuen Verzeichnissen mit demselben Namen.

Um jede Excel-Datei abzurufen, die sich im aktuellen Verzeichnis befindet, wird die glob-Funktion verwendet. Danach werden mit der Funktion os.mkdir Ordner für jede XLSX-Datei erstellt. Dann wird für jedes Blatt innerhalb des neuen Verzeichnisses eine CSV-Datei erstellt, indem der Blattname wiederholt wird.

Methode 2: Konvertieren von XLSX in CSV mit Openpyxl- und CSV-Modulen

Bei dieser Methode verwenden wir die Module openpyxl und CSV, um die XLSX-Dateien in CSV zu konvertieren. Zum Lesen und Schreiben von 2010 xlsx-, xlsm-, xltx- und xltm-Dateien kann das Python-Modul openpyxl verwendet werden. Das CSV-Modul enthält Klassen, die das Lesen und Schreiben von CSV-formatierten Tabellendaten ermöglichen.

Um unsere xlsx-Datei zu lesen oder zu laden, verwenden wir die Funktion load_workbook() des openpyxl-Moduls. Sie können diese Funktion verwenden, wenn Sie eine vorhandene XLSX/Excel-Datei in Python schreiben oder lesen müssen. Nach der Aktivierung von Excel verwenden wir die Funktion csv.writer(), um unsere CSV-Datei zu erstellen. Dann wird die for-Schleife verwendet, um die Daten in den Datenzellen der CSV-Datei zu speichern. Wir konvertieren unsere example.xlsx-Datei in myfile.csv, wie im folgenden Bild zu sehen:

Fazit

In diesem Tutorial haben wir Ihnen eine kurze Einführung in XLSX-Dateien und CSV-Dateien gegeben. Wir haben die wichtigsten Unterschiede zwischen beiden Dateiformaten erklärt. Wir haben zwei Methoden mit mehreren Beispielen besprochen, um zu zeigen, wie die XLSX-Dateien mit einzelnen oder mehreren Blättern in CSV-Dateien konvertiert werden können. Wir haben ein Beispiel implementiert, um mehrere XLSX-Dateien gleichzeitig in CSV-Dateien zu konvertieren. Es kann einfach oder schwierig sein, die Daten von Excel in CSV zu konvertieren. Wenn Sie nur eine Datei mit einer kleinen Anzahl von Blättern haben, ist es einfach. Aber wenn nicht, kann es schwierig werden.