Erstellen Sie eine Pivot-Tabelle in Excel mit Python

Pivot-Tabellen in Excel-Tabellen werden verwendet, um die Daten auf interaktive Weise zusammenzufassen. Angenommen, Sie haben die Daten mehrerer Rechnungen und möchten deren Gesamtsumme gruppiert nach Kunden oder Produkten erhalten. In solchen Fällen kommen die Pivot-Tabellen ins Spiel. In diesem Artikel erfahren Sie, wie Sie in Python mit Pivot-Tabellen in Excel umgehen. Insbesondere lernen Sie, wie Sie eine Pivot-Tabelle in Excel in Python erstellen. Darüber hinaus zeigen wir Ihnen, wie Sie Zellen in den Excel-Pivot-Tabellen programmgesteuert formatieren.

Python Bibliothek zum Erstellen von Pivot-Tabellen in Excel – kostenloser Download

Aspose.Cells for Python ist eine Hochgeschwindigkeitsbibliothek, die zum Erstellen und Verarbeiten von Excel Dateien entwickelt wurde. Wir werden diese Bibliothek verwenden, um Pivot-Tabellen in Excel-Tabellen zu erstellen.

Sie können sein Paket herunterladen oder es von PyPI mit dem folgenden Pip-Befehl installieren.

pip install aspose-cells

Erstellen Sie eine Pivot-Tabelle in Excel in Python

Im Folgenden sind die Schritte zum Erstellen einer Pivot-Tabelle in Excel mit Python aufgeführt.

  • Erstellen Sie mithilfe der Workbook Klasse eine neue oder laden Sie eine vorhandene Excel-Datei.
  • Füllen Sie das Arbeitsblatt mit Daten (optional).
  • Rufen Sie die Sammlung von Pivot-Tabellen mithilfe der Worksheet.getPivotTables()-Methode in ein PivotTableCollection Objekt ab.
  • Fügen Sie eine neue Pivot-Tabelle mit der Methode PivotTableCollection.add(string, string, string) hinzu und rufen Sie ihre Referenz in einem Objekt ab.
  • Legen Sie Optionen wie Gesamtsumme, Formatierung usw. fest.
  • Fügen Sie mithilfe der Methode PivotTable.addFieldToArea(int, int) Felder zum Bereich hinzu.
  • Speichern Sie die Arbeitsmappe mit der Methode Workbook.save(string).

Das folgende Codebeispiel zeigt, wie Sie eine Pivot-Tabelle in Excel in Python hinzufügen.

import jpype
import asposecells

jpype.startJVM()
from asposecells.api import Workbook, PivotFieldType

# Instanziieren Sie ein Workbook Objekt
workbook = Workbook()

# Fügen Sie ein neues Arbeitsblatt hinzu und rufen Sie seine Referenz ab
sheetIndex = workbook.getWorksheets().add()
worksheet = workbook.getWorksheets().get(sheetIndex)

# Holen Sie sich Zellen des Arbeitsblatts
cells = worksheet.getCells()

# Legen Sie den Wert für die Zellen fest
cell = cells.get("A1")
cell.setValue("Sport")
cell = cells.get("B1")
cell.setValue("Quarter")
cell = cells.get("C1")
cell.setValue("Sales")

cell = cells.get("A2")
cell.setValue("Golf")
cell = cells.get("A3")
cell.setValue("Golf")
cell = cells.get("A4")
cell.setValue("Tennis")
cell = cells.get("A5")
cell.setValue("Tennis")
cell = cells.get("A6")
cell.setValue("Tennis")
cell = cells.get("A7")
cell.setValue("Tennis")
cell = cells.get("A8")
cell.setValue("Golf")

cell = cells.get("B2")
cell.setValue("Qtr3")
cell = cells.get("B3")
cell.setValue("Qtr4")
cell = cells.get("B4")
cell.setValue("Qtr3")
cell = cells.get("B5")
cell.setValue("Qtr4")
cell = cells.get("B6")
cell.setValue("Qtr3")
cell = cells.get("B7")
cell.setValue("Qtr4")
cell = cells.get("B8")
cell.setValue("Qtr3")

cell = cells.get("C2")
cell.setValue(1500)
cell = cells.get("C3")
cell.setValue(2000)
cell = cells.get("C4")
cell.setValue(600)
cell = cells.get("C5")
cell.setValue(1500)
cell = cells.get("C6")
cell.setValue(4070)
cell = cells.get("C7")
cell.setValue(5000)
cell = cells.get("C8")
cell.setValue(6430)

# Holen Sie sich alle Pivot-Tabellen
pivotTables = worksheet.getPivotTables()

# Fügen Sie dem Arbeitsblatt eine neue Pivot-Tabelle hinzu
index = pivotTables.add("=A1:C8", "E3", "PivotTable2")

# Greifen Sie auf die Instanz der neu hinzugefügten Pivot-Tabelle zu
pivotTable = pivotTables.get(index)

# Gesamtsummen für Zeilen ausblenden
pivotTable.setRowGrand(False)

# Ziehen Sie das erste Feld in den Zeilenbereich
pivotTable.addFieldToArea(PivotFieldType.ROW, 0)

# Ziehen Sie das zweite Feld in den Spaltenbereich
pivotTable.addFieldToArea(PivotFieldType.COLUMN, 1)

# Ziehen Sie das dritte Feld in den Datenbereich
pivotTable.addFieldToArea(PivotFieldType.DATA, 2)

# Speichern Sie die Excel-Datei
workbook.save("CreatePivotTable.xlsx")

Excel-Daten

Datenquelle für Excel-Pivot-Tabelle

Pivot-Tabelle

Pivot-Tabelle in Excel in Java erstellen

Formatieren Sie Zellen in Excel-Pivot-Tabellen in Python

Im Folgenden sind die Schritte zum Formatieren von Zellen in Excel-Pivot-Tabellen in Python aufgeführt.

  • Erstellen Sie mithilfe der Workbook Klasse eine neue oder laden Sie eine vorhandene Excel-Datei.
  • Füllen Sie das Arbeitsblatt aus (optional).
  • Rufen Sie den Verweis auf das Arbeitsblatt ab, in dem sich die Pivot-Tabelle befindet.
  • Rufen Sie mithilfe der Methode Worksheet.getPivotTables().get(index) den Verweis auf die Pivot-Tabelle nach Index ab.
  • Erstellen Sie einen neuen Stil mit der Methode Workbook.createStyle() und rufen Sie seine Referenz ab.
  • Legen Sie die gewünschten Eigenschaften des Style Objekts fest.
  • Style Objekt der Pivot-Tabelle zuweisen.
  • Speichern Sie die Arbeitsmappe mit der Methode Workbook.save(string).

Das folgende Codebeispiel zeigt, wie eine Excel-Pivot-Tabelle in Python formatiert wird.

import jpype
import asposecells

jpype.startJVM()
from asposecells.api import Workbook, BackgroundType, Color

# Erstellen Sie ein Arbeitsmappenobjekt aus einer Excel-Quelldatei, die eine Pivot-Tabelle enthält
workbook = Workbook("pivotTable_test.xlsx")

# Greifen Sie über den Namen auf das Arbeitsblatt zu
worksheet = workbook.getWorksheets().get("PivotTable")

# Greifen Sie über den Index auf die Pivot-Tabelle zu
pivotTable = worksheet.getPivotTables().get(0)

# Erstellen Sie ein Stilobjekt mit hellblauer Hintergrundfarbe
style = workbook.createStyle()
style.setPattern(BackgroundType.SOLID)
style.setBackgroundColor(Color.getLightBlue())

# Formatieren Sie die gesamte Pivot-Tabelle mit hellblauer Farbe
pivotTable.formatAll(style)

# Erstellen Sie ein weiteres Stilobjekt mit gelber Farbe
style = workbook.createStyle()
style.setPattern(BackgroundType.SOLID)
style.setBackgroundColor(Color.getYellow())

# Formatieren Sie die Zellen der ersten Zeile der Pivot-Tabelle mit gelber Farbe
columns = [0, 1, 2, 3, 4]
for x in columns:
  pivotTable.format(1, x, style)

# Speichern Sie das Arbeitsmappenobjekt
workbook.save("output.xlsx")

Python Bibliothek zum Erstellen von Excel-Pivot-Tabellen – Holen Sie sich eine kostenlose Lizenz

Sie können eine kostenlose temporäre Lizenz erhalten, um Aspose.Cells for Python ohne Evaluierungseinschränkungen zu verwenden.

Fazit

In diesem Artikel haben Sie gelernt, wie Sie in Python eine Pivot-Tabelle in Excel-Tabellen erstellen. Außerdem haben Sie gesehen, wie Sie Zellen in Pivot-Tabellen in Excel programmgesteuert formatieren. Außerdem können Sie mithilfe von Dokumentation mehr über die Python-Excel-Bibliothek erfahren. Falls Sie Fragen haben, können Sie uns diese gerne über unser Forum mitteilen.

Siehe auch