Einfacher Vergleich von Python-Bibliotheken, die Excel betreiben

Ich war verwirrt, weil es in Python mehrere Möglichkeiten gab, mit Excel zu spielen. Deshalb habe ich sie in einer Tabelle zusammengefasst.

Vergleichstabelle

Da die Tabelle groß ist, habe ich Excel auf einem anderen Server veröffentlicht, ohne es in Qiita zu schreiben. Es werden nur die Operationen beschrieben, die wahrscheinlich häufig verwendet werden. http://mirutsurumi.html.xdomain.jp/Excel_pylib.html (Geplant, entsprechend aktualisiert zu werden.)

Die folgenden Bibliotheken sind zusammengefasst.

verwenden
openpyxl Behandeln Sie Excel als Excel und verwenden Sie es für Vorgänge, bei denen es um Zellformate geht. Klicken Sie hier für viele Erklärungen in Büchern.
pandas Verwenden Sie diese Option, wenn Sie nicht an Excel-Formaten interessiert sind und sich nur auf Datenanalysen spezialisieren möchten. openpyxl als Motorvariable,xlsxwriter kann ebenfalls verwendet werden.
xlwings (Bearbeitung) Was Sie tun können, ist ähnlich wie openpyxl, aber das Bedienungsgefühl ist anders. Wenn Sie es ausführen, wird Excel selbst gestartet. Wenn Sie die interaktive Shell verwenden, können Sie arbeiten, während Sie beobachten, wie sich der Inhalt ändert. Es kann auch offiziell Pandas df laden. Da auch ein VBA-Betrieb möglich ist, kann der Zellenbereich als Bereich angegeben werden.("A1:C3")Es ist auch leicht zu verstehen, dass Sie wie angeben können.
xlrd, xlwt In der Nähe von openpyxl, einem Bild wie in der vorherigen Version. Da es auch in Pandas enthalten ist, ist es unwahrscheinlich, dass es alleine verwendet wird. Sie müssen diese im Voraus installieren, um Excel mit Pandas zu betreiben.
xlsxwriter In der Nähe von openpyxl, einem Bild wie in der vorherigen Version. Da es auch in Pandas enthalten ist, ist es unwahrscheinlich, dass es alleine verwendet wird. Xlsxwriter muss im Voraus installiert werden, wenn Excel mit Pandas betrieben wird.

Die Tabelle dient als einfache Referenz, daher wird auf eine ausführliche Erläuterung verzichtet.

Xlwings und openpyxl werden auch im folgenden Artikel verglichen. https://qiita.com/m5knt/items/ab56f1d0a783f3422ee3

■ Grundlegende Vorgehensweise 【openpyxl, xlrd/xlwt, xlsxwriter】 ① Erstellen Sie ein wb-Objekt mit dem Bibliotheksnamen.Workbook () ② ws = wb. Erstellen Sie ein ws-Objekt mit der Funktion zum Hinzufügen von Blättern (xlsxwriter ist bis hier) ③ Erstellen Sie auf die gleiche Weise von ws zum Zellenobjekt und arbeiten Sie dann mit Ihrer bevorzugten Funktion. ④ Speichern (neues Excel wird zu diesem Zeitpunkt angezeigt)

【pandas】 (1) Daten festlegen (vorhandenes Excel mit pd.read_excel lesen) * Sie können auch direkt mit pd.DataFrame schreiben. (2) Manipulation und Filterung von Zellenwerten mit df.loc usw. (Pivot_table kann ebenfalls verwendet werden, obwohl dies nicht in der Tabelle aufgeführt ist.) ③ Erstellen Sie mit df.to_excel ein neues Excel

Pandas Ergänzung

Da die Beziehung zwischen read_excel, to_excel und ExcelWriter kompliziert ist, werde ich sie ergänzen.

■read_excel Lesen Sie die Daten df des vorhandenen Excel-angegebenen Blattes (oder des Blattes ganz links, falls nicht angegeben). Es liest nur df (DataFrame-Typ) und definiert nicht den Excel-Arbeitsmappentyp.

■to_excel Schreiben Sie df in die angegebene Excel-Datei.

■ExcelWriter Definieren Sie die Excel-Datei, die mit to_excel geschrieben werden soll. (Ähnlich dem Bild, das wb in openpyxl definiert.) Sie können mit to_excel (Dateiname) schreiben, ohne ExcelWriter zu definieren. Durch die Kombination mit Anweisung können Sie jedoch Daten auf mehrere Blätter gleichzeitig schreiben. Wenn Sie dies nicht mit der with-Anweisung kombinieren und den Excel-Dateinamen in eine Variable konvertieren (in einigen Fällen für jeden Pfad), wird die Beschreibung von to_excel redundant. Schließlich gibt es eine Vereinfachung der Beschreibung, kein Muss.

Recommended Posts

Einfacher Vergleich von Python-Bibliotheken, die Excel betreiben
Betreiben Sie Excel mit Python (1)
Betreiben Sie Excel mit Python (2)
Python, das viele Excel zu einem Excel zusammenführt
Ein schneller Vergleich der Testbibliotheken von Python und node.js.
Betreiben Sie Excel mit Python Open Pyxl
Vergleich von 4 Arten von Python-Webframeworks
Einfache FPS-Messung von Python
Geschwindigkeitsvergleich der Python-XML-Perspektive
Vergleich japanischer Konvertierungsmodule in Python3
Python-String-Vergleich / benutze 'Liste' und 'In' anstelle von '==' und 'oder'
Versuchen Sie, Excel mit Python (Xlwings) zu betreiben.
Vergleich von Python Serverless Frameworks-Zappa mit Chalice
Vergleich der Matrixtranspositionsgeschwindigkeit durch Python
[Python] 3 Arten von Bibliotheken, die die Protokollausgabe ein wenig verbessern [logzero, loguru, pyrogrus]
Konvertieren Sie die "Anzahl" des Excel-Datums in die Python-Datumszeit
Leistungsvergleich des Gesichtsdetektors mit Python + OpenCV
[Python3] Geschwindigkeitsvergleich usw. über den Entzug von numpy.ndarray
Automatisieren einfacher Aufgaben mit Python Inhaltsverzeichnis
Stapelkonvertierung von Excel-Dateien in JSON [Python]
R- und Python-Schreibvergleich (euklidische Methode der gegenseitigen Teilung)
Ein Liner, der mit Python ein Umfangsverhältnis von 10000 Stellen ausgibt
Vergleich von Python und Ruby (Environment / Grammar / Literal Edition)
Zusammenfassung der Excel-Operationen mit OpenPyXL in Python
Erster Python 3 ~ Erster Vergleich ~
Python-Grundlagen ①
Grundlagen von Python ①
Kopie von Python
Excel mit Python
Einführung von Python
Implementierungsbeispiel eines einfachen LISP-Verarbeitungssystems (Python-Version)
[Python] Ein Programm, das die Anzahl der Täler zählt
Betreiben Sie mongoDB von Python in einer Ubuntu-Umgebung. ① Einführung von mongoDB
[Python] [Word] [python-docx] Einfache Analyse von Diff-Daten mit Python
Liste der Python-Bibliotheken für Datenwissenschaftler und Dateningenieure
Vergleich der Implementierung mehrerer exponentieller gleitender Durchschnitte (DEMA, TEMA) in Python
Ein Liner, der mit Python ein Umfangsverhältnis von 1000000 Stellen ausgibt
Berechnen Sie den Regressionskoeffizienten der einfachen Regressionsanalyse mit Python
Super einfach: Eine Sammlung von Shells, die Daten ausgeben
Vergleichstabelle häufig verwendeter Prozesse von Python und Clojure
Die Einstellung, die Programmierer haben sollten (The Zen of Python)
[Python] Ein Programm, das die Positionen von Kängurus vergleicht.
Lassen Sie uns GPIO von Raspeye mit Python CGI betreiben
Vergleich von CoffeeScript mit JavaScript-, Python- und Ruby-Grammatik
So starten Sie einen einfachen WEB-Server, der CGI von PHP und Python ausführen kann
[Python] Erstellen eines GUI-Tools, das die CSV von Temperaturanstiegsdaten in Excel automatisch verarbeitet