Ich war verwirrt, weil es in Python mehrere Möglichkeiten gab, mit Excel zu spielen. Deshalb habe ich sie in einer Tabelle zusammengefasst.
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
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