Xlsxwriter ghi khung dữ liệu vào trang tính

Viết Excel với Python Pandas. Bạn có thể ghi bất kỳ dữ liệu nào (danh sách, chuỗi, số, v.v.) vào Excel, trước tiên bằng cách chuyển đổi dữ liệu đó thành Khung dữ liệu Pandas và sau đó ghi Khung dữ liệu vào Excel

Để xuất Khung dữ liệu Pandas dưới dạng tệp Excel (phần mở rộng. . xlsx,. xls), sử dụng phương pháp

$ pip install xlwt
$ pip install openpyxl
4

khóa học liên quan. Phân tích dữ liệu với Python Pandas

cài đặtxlwt, openpyxl

$ pip install xlwt
$ pip install openpyxl
4 sử dụng thư viện có tên là xlwt và openpyxl trong nội bộ

  • xlwt được sử dụng để viết. xls (định dạng lên đến Excel2003)
  • openpyxl được sử dụng để viết. xlsx (định dạng Excel2007 trở lên)

Cả hai có thể được cài đặt với pip. (pip3 tùy thuộc vào môi trường)

1
2
$ pip install xlwt
$ pip install openpyxl

Viết Excel

Ghi DataFrame vào tệp Excel

Cần nhập openpyxl nếu bạn muốn nối nó vào tệp Excel hiện có được mô tả ở cuối.
Một khung dữ liệu được xác định bên dưới.

1
2
3
4
5
6
7
8
9
10
11
import pandas as pd
import openpyxl

df = pd.DataFrame([[11, 21, 31], [12, 22, 32], [31, 32, 33]],
index=['one', 'two', 'three'], columns=['a', 'b', 'c'])

print(df)
# a b c
# one 11 21 31
# two 12 22 32
# three 31 32 33

Bạn có thể chỉ định một đường dẫn làm đối số đầu tiên của

$ pip install xlwt
$ pip install openpyxl
6

Ghi chú. rằng dữ liệu trong tệp gốc sẽ bị xóa khi ghi đè lên

Đối số

$ pip install xlwt
$ pip install openpyxl
7 là tên của sheet. Nếu bỏ qua sẽ có tên là
$ pip install xlwt
$ pip install openpyxl
8

1
$ pip install xlwt
$ pip install openpyxl
0

Xlsxwriter ghi khung dữ liệu vào trang tính

khóa học liên quan. Phân tích dữ liệu với Python Pandas

Nếu không cần ghi chỉ số (tên hàng), cột (tên cột) thì đối số chỉ số, cột là Sai

1
$ pip install xlwt
$ pip install openpyxl
2

Viết nhiều DataFrames vào tệp Excel

Đối tượng ExcelWriter cho phép bạn sử dụng nhiều gấu trúc. Các đối tượng DataFrame có thể được xuất sang các trang riêng biệt

Như một ví dụ, gấu trúc. Chuẩn bị một đối tượng DataFrame khác

$ pip install xlwt
$ pip install openpyxl
3____14

Sau đó sử dụng hàm ExcelWriter() như thế này

$ pip install xlwt
$ pip install openpyxl
0
$ pip install xlwt
$ pip install openpyxl
1

Bạn không cần phải gọi cho nhà văn. lưu (), nhà văn. close() trong các khối

Nối vào một tệp Excel hiện có

Bạn có thể nối thêm DataFrame vào tệp Excel hiện có. Đoạn mã dưới đây mở một tệp hiện có, sau đó thêm hai trang tính với dữ liệu của các khung dữ liệu

Phương pháp này chỉ nên được sử dụng nếu DataFrame kết quả dự kiến ​​sẽ nhỏ, vì tất cả dữ liệu được tải vào bộ nhớ của trình điều khiển

Để ghi một đối tượng vào Excel. xlsx, chỉ cần chỉ định tên tệp đích. Để ghi vào nhiều trang tính, cần tạo một đối tượng ExcelWriter với tên tệp đích và chỉ định một trang tính trong tệp để ghi vào

Có thể ghi nhiều trang tính bằng cách chỉ định sheet_name duy nhất. Với tất cả dữ liệu được ghi vào tệp, cần lưu các thay đổi. Lưu ý rằng việc tạo đối tượng ExcelWriter với tên tệp đã tồn tại sẽ dẫn đến nội dung của tệp hiện có bị xóa

Tham sốsexcel_writerstr hoặc đối tượng ExcelWriter

Đường dẫn tệp hoặc ExcelWriter hiện có

sheet_namestr, mặc định là ‘Sheet1’

Tên của trang tính sẽ chứa DataFrame

na_repstr, mặc định ‘’

Thiếu biểu diễn dữ liệu

float_formatstr, tùy chọn

Định dạng chuỗi cho số dấu phẩy động. Ví dụ:

1
2
0 sẽ định dạng 0. 1234 đến 0. 12

cột hoặc danh sách str, tùy chọn

Các cột để viết

headerbool hoặc danh sách str, mặc định là True

Viết tên các cột. Nếu một danh sách chuỗi được đưa ra, nó được coi là bí danh cho tên cột

indexbool, mặc định là True

Viết tên hàng (chỉ mục)

index_labelstr hoặc trình tự, tùy chọn

Nhãn cột cho (các) cột chỉ mục nếu muốn. Nếu không được chỉ định và tiêu đề và chỉ mục là True, thì tên chỉ mục được sử dụng. Một chuỗi sẽ được cung cấp nếu DataFrame sử dụng MultiIndex

startrowint, mặc định 0

Hàng ô trên bên trái để kết xuất khung dữ liệu

startcolint, mặc định 0

Cột ô phía trên bên trái để kết xuất khung dữ liệu

động cơ, tùy chọn

Công cụ viết để sử dụng, 'openpyxl' hoặc 'xlsxwriter'. Bạn cũng có thể thiết lập điều này thông qua các tùy chọn

1
2
1,
1
2
2 và
1
2
3

merge_cellsbool, mặc định là True

Viết MultiIndex và Hierarchical Rows dưới dạng các ô được hợp nhất

mã hóa, tùy chọn

Mã hóa tệp excel kết quả. Chỉ cần thiết cho xlwt, các nhà văn khác hỗ trợ unicode nguyên bản

inf_repstr, 'inf' mặc định

Biểu diễn cho vô cực (không có biểu diễn riêng cho vô cực trong Excel)

verbosebool, mặc định là True

Hiển thị thêm thông tin trong nhật ký lỗi

freeze_panestuple của int (độ dài 2), tùy chọn

Chỉ định hàng dưới cùng và cột ngoài cùng bên phải dựa trên một nền tảng sẽ được cố định

ghi chú

Khi sổ làm việc đã được lưu, không thể ghi thêm dữ liệu nếu không viết lại toàn bộ sổ làm việc

ví dụ

Tạo, ghi và lưu sổ làm việc

$ pip install xlwt
$ pip install openpyxl
7

Để chỉ định tên trang tính

$ pip install xlwt
$ pip install openpyxl
8

Nếu bạn muốn ghi vào nhiều trang tính trong sổ làm việc, cần chỉ định đối tượng ExcelWriter

$ pip install xlwt
$ pip install openpyxl
9

Để đặt thư viện được sử dụng để ghi tệp Excel, bạn có thể nhập từ khóa engine (công cụ mặc định được chọn tự động tùy thuộc vào phần mở rộng của tệp)

OpenPyXL hay XlsxWriter cái nào tốt hơn?

XlsxWriter. Nếu bạn chỉ cần viết sổ làm việc Excel và không đọc chúng thì XlsxWriter là một gói dễ sử dụng để sử dụng hoạt động tốt. Nếu bạn đang làm việc với các tệp lớn hoặc đặc biệt quan tâm đến tốc độ thì bạn có thể thấy XlsxWriter là lựa chọn tốt hơn OpenPyXL .

Làm cách nào để sao chép một trang tính sang một trang tính khác trong Excel bằng Python?

Sau đây là các bước để thực hiện thao tác này. .
Tải tệp Excel đích bằng lớp Workbook
Tương tự, tải tệp Excel nguồn bằng lớp Workbook
Sao chép dữ liệu từ trang tính nguồn sang trang tính đích bằng Workbook1. getWorksheets(). .
Lưu tệp Excel đích bằng Workbook. phương pháp lưu (tên tệp)