Cách tạo Bảng Pivot trong Python

Hướng dẫn ngắn gọn này hướng đến tạo bảng tổng hợp trong Python với sự trợ giúp của các bước chi tiết cung cấp thông tin về cấu hình môi trường và luồng chương trình Python. Trong khi sử dụng bảng tổng hợp Python Excel sẽ được tạo bằng cách sử dụng mã mẫu có thể chạy được sau khi tải sổ làm việc nguồn chứa dữ liệu đầu vào cho bảng tổng hợp. Cuối cùng, sổ làm việc kết quả sẽ được lưu ở bất kỳ định dạng mong muốn nào như XLSX, XLS, v.v.

Các bước để tạo Pivot Table trong Python

  1. Thiết lập môi trường để cài đặt Aspose.Cells cho Python qua Java vào dự án
  2. Tải hoặc tạo đối tượng lớp Workbook chứa dữ liệu đầu vào cho bảng tổng hợp
  3. Nhận tham chiếu đến bộ sưu tập bảng tổng hợp trong mục tiêu worksheet
  4. Thêm một bảng tổng hợp trong bộ sưu tập
  5. Định cấu hình bảng tổng hợp mới được thêm vào
  6. Thêm các trường mong muốn vào các khu vực tương ứng trong bảng tổng hợp
  7. Lưu sổ làm việc đầu ra với bảng tổng hợp trong đó

Các bước này cung cấp hướng dẫn cho mã Python để tạo bảng tổng hợp trong Excel bằng cách chia sẻ liên kết đến tài nguyên cấu hình môi trường và chuỗi tác vụ sẽ được thực hiện trong Python để đạt được chức năng. Nó hướng dẫn thêm các trường vào các khu vực khác nhau trong bảng tổng hợp theo yêu cầu. Sau khi bảng tổng hợp được chuẩn bị, nó sẽ được lưu trong tệp Excel ở định dạng mong muốn.

Mã để tạo Bảng tổng hợp Excel bằng Python

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()
Những dòng mã này trong Python tạo bảng tổng hợp Excel bằng cách sử dụng dữ liệu trong tệp Excel đã tải. Lưu ý rằng bạn có thể bỏ qua việc tạo sổ làm việc nếu bạn đã có tệp Excel chứa dữ liệu và chỉ cần tải tệp đó. Mã này cũng thể hiện tùy chỉnh của bảng tổng hợp mới được tạo bằng cách ẩn tổng số lớn của các hàng riêng lẻ bằng cách đặt cờ RowGrand thành Sai trong khi bạn có thể thực hiện các tùy chỉnh khác như đặt tiêu đề của văn bản thay đổi, đặt cột lớn, sắp xếp danh sách tùy chỉnh , vân vân.

Bài viết này đã hướng dẫn chúng ta tạo một bảng tổng hợp. Nếu bạn muốn đọc các tệp Excel được bảo vệ bằng mật khẩu, hãy tham khảo bài viết trên đọc tệp Excel được bảo vệ bằng mật khẩu trong Python.

 Tiếng Việt