Jak vytvořit kontingenční tabulku v Pythonu

Tento stručný návod směřuje k vytvoření kontingenční tabulky v Pythonu s pomocí podrobných kroků poskytujících informace o konfiguraci prostředí a toku programu Python. Při používání Python Excel kontingenční tabulka bude vytvořena pomocí spustitelného ukázkového kódu po načtení zdrojového sešitu obsahujícího vstupní data pro kontingenční tabulku. Nakonec bude výsledný sešit uložen v libovolném z požadovaných formátů, jako je XLSX, XLS atd.

Kroky k vytvoření kontingenční tabulky v Pythonu

  1. Vytvořte prostředí pro instalaci Aspose.Cells pro Python prostřednictvím Javy do projektu
  2. Načtěte nebo vytvořte objekt třídy Workbook obsahující vstupní data pro kontingenční tabulku
  3. Získejte odkaz na kolekci kontingenčních tabulek v cíli worksheet
  4. Přidejte do kolekce kontingenční tabulku
  5. Nakonfigurujte nově přidanou kontingenční tabulku
  6. Přidejte požadovaná pole do příslušných oblastí v kontingenční tabulce
  7. Uložte výstupní sešit s kontingenční tabulkou v něm

Tyto kroky poskytují pokyny pro kód Pythonu k vytvoření kontingenční tabulky v Excelu sdílením odkazu na zdroj konfigurace prostředí a na posloupnost úloh, které je třeba provést v Pythonu, abyste dosáhli této funkce. Vede k přidání polí do různých oblastí v kontingenční tabulce podle požadavku. Jakmile je kontingenční tabulka připravena, uloží se do souboru Excel v požadovaném formátu.

Kód pro vytvoření kontingenční tabulky Excel s Pythonem

import jpype
import csv
import asposecells
jpype.startJVM()
from asposecells.api import License, Workbook, PivotFieldType, LoadOptions,FileFormatType
# Instantiate a license to avoid watermark in the output Excel file having pivot table
cellsLicense = License()
cellsLicense.setLicense("Aspose.Cells.lic")
header = ['City', 'Class', 'Fee']
data = [
['Islamabad','Class 1',750],
['Islamabad','Class 4',1000],
['Karachi','Class 1',300],
['Karachi','Class 4',750],
['Karachi','Class 1',2035],
['Karachi','Class 4',2500],
['Islamabad','Class 1',3215]
]
with open('data.csv', 'w', encoding='UTF8', newline='') as f:
writer = csv.writer(f)
# write the header
writer.writerow(header)
# write the data
writer.writerows(data)
# Create a CSV LoadOptions class object
csvLoadOptions = LoadOptions(FileFormatType.CSV)
# Load the CSV data into Workbook class object using the load options
csvWorkbook = Workbook("data.csv",csvLoadOptions)
# Get access to the first sheet for adding pivot table to it
wsPivotTable = csvWorkbook.getWorksheets().get(0)
# Get access to pivot tables collection in the selected sheet
pivotTablesCollection = wsPivotTable.getPivotTables()
# Create the pivot table and save its index
pivotTableIndex = pivotTablesCollection.add("=A1:C8", "A10", "PythonPivotTable")
# Get access to the newly created pivot table
newPivotTable = pivotTablesCollection.get(pivotTableIndex)
# set flag to hide grand totals for rows
newPivotTable.setRowGrand(False)
# Add the first field to the column area of the pivot table
newPivotTable.addFieldToArea(PivotFieldType.COLUMN, 0)
# Add the second field to the row area of the pivot table
newPivotTable.addFieldToArea(PivotFieldType.ROW, 1)
# Add the third field to the data area
newPivotTable.addFieldToArea(PivotFieldType.DATA, 2)
# Saving the Excel file
csvWorkbook.save("NewPivotTable.xlsx")
jpype.shutdownJVM()
Tyto řádky kódu v Pythonu vytvářejí kontingenční tabulku Excelu pomocí dat v načteném souboru Excel. Všimněte si, že vytvoření sešitu můžete přeskočit, pokud již máte soubor aplikace Excel obsahující data a stačí jej načíst. Tento kód také demonstruje přizpůsobení nově vytvořené kontingenční tabulky skrytím celkového součtu jednotlivých řádků nastavením příznaku RowGrand na False, zatímco můžete provádět další přizpůsobení, jako je nastavení názvu změněného textu, nastavení sloupce grand, vlastní řazení seznamu , atd.

Tento článek nás navedl k vytvoření kontingenční tabulky. Pokud si chcete přečíst soubory Excel chráněné heslem, přečtěte si článek o číst heslem chráněný soubor Excel v Pythonu.

 Čeština