Hướng dẫn python export to excel - xuất python sang excel

Đây là các thư viện Python để xử lý file Excel, không yêu cầu phải chạy trên môi trường Windows, có thể sử dụng cả với Python 2 & 3:

Thư viện Python để xử lý file Excel

openpyxl

Thư viện được đề xuất cho việc đọc ghi file Excel 2010 (xlsx)

  • Download: http://pypi.python.org/pypi/openpyxl
  • Tài liệu: https://openpyxl.readthedocs.org/
  • Bitbucket: https://bitbucket.org/openpyxl/openpyxl

xlsxwriter

Thư viện để ghi dữ liệu, format, tạo bảng biểu cho Excel 2010 (xlsx)

  • Download: https://pypi.python.org/pypi/XlsxWriter
  • Tài liệu: https://xlsxwriter.readthedocs.org/
  • GitHub: https://github.com/jmcnamara/XlsxWriter

xlrd

Thư viện đọc, ghi file excel với dịnh dạng cũ (xls)

  • Download: http://pypi.python.org/pypi/xlrd
  • Tài liệu: http://xlrd.readthedocs.io/en/latest/
  • GitHub: https://github.com/python-excel/xlrd

xlwt

Thư viện đọc, ghi file excel với dịnh dạng cũ (xls)

  • Download: http://pypi.python.org/pypi/xlwt
  • Tài liệu: http://xlrd.readthedocs.io/en/latest/
  • Examples: https://github.com/python-excel/xlwt/tree/master/examples
  • GitHub: https://github.com/python-excel/xlwt

xlwt

Tài liệu: http://xlwt.readthedocs.io/en/latest/

  • Download: http://pypi.python.org/pypi/xlutils
  • xlutils
  • GitHub: https://github.com/python-excel/xlutils

Thư viện tổng hợp cả xlrd, openpyxl và xlwt, để xử lý copy và chỉnh sửa các file excel

Tài liệu: http://xlutils.readthedocs.io/en/latest/

  • Pandas là gì?
  • Github: https://github.com/pandas-dev/pandas
  • Pandas là một thư viện mã nguồn mở, được cấp phép BSD cung cấp các cấu trúc dữ liệu và các công cụ phân tích dữ liệu hiệu suất cao, dễ sử dụng cho ngôn ngữ lập trình Python. Nó hỗ trợ đọc các định dạng file: CSV, MS Excel, HTML, SQL,…

Trang chủ: https://pandas.pydata.org/

Tài liệu: http://pandas.pydata.org/pandas-docs/stable/

Đối với Excel, Pandas sử dụng tích hợp các thư viện xlrd, openpyxl, xlsxwriter và xlwt (Mặc định là xlrd). Nếu sử dụng thư viện nào thì bạn cần phải cài đặt thư viện đó, tất nhiên là cài đặt thông qua công cụ quản lý pip3 của Python 3

pip3 install pandas

Cài đặt thư viện Pandas

pip3 install xlrd

Sử dụng công cụ quản lý pip3 để cài Pandas:

pip3 install xlrd==1.2.0

Vì mặc đinh Pandas sử dụng thư viện đọc Excel là xlrd nên chúng ta cần cài thêm xlrd:

pip3 install openpyxl

Hiện tại thì phiên bản mới nhất của xlrd đã không còn hỗ trợ định dang file xlsx, nếu nếu bạn muốn sử dụng thì hãy cài version thấp hơn là 1.2.0

Hoặc cài bản openpyxl: sử dụng Pandas đọc file example.xls có format như sau:

Hướng dẫn python export to excel - xuất python sang excel

Đọc file Excel với Pandas

#! /usr/bin/python3

import pandas as pd

xl = pd.ExcelFile('example.xls')

# get the first sheet as an object
df = pd.read_excel(xl, 0, header=None)
print(df.head())

VD: sử dụng Pandas đọc file example.xls có format như sau:

Hướng dẫn python export to excel - xuất python sang excel

Source Code: 

pd.read_excel(path, engine = 'openpyxl')

Kết quả: 

Trường hợp là file xlsx chúng ta cần cài openpyxl và chuyển sang sử dụng khi đó:

df.at[1, 1]

Một số xử lý file Excel với Pandas

– Lấy giá trị của 1 cell cố định

df.iloc[:, 0]

Kết quả như trong file Excel ví dụ sẽ là: STT

max_rows = len(df.iloc[:, 0])

– Lấy dữ liệu của 1 cột

pd.isnull(df.at[1, 1])

– Lấy số số tổng số dòng dữ liệu của file Excel

Bạn có thể xuất & nbsp; gandas dataFrame sang một tệp excel bằng cách sử dụng to_excel.to_excel.

Dưới đây là một mẫu mà bạn có thể áp dụng trong Python để xuất DataFrame của mình:

pip3 install xlrd
0

Và nếu bạn muốn xuất DataFrame của mình sang một bảng Excel cụ thể, thì bạn có thể sử dụng mẫu này:

pip3 install xlrd
1

Lưu ý: Bạn sẽ phải cài đặt OpenPyXL nếu bạn gặp lỗi sau:: you’ll have to install openpyxl if you get the following error:

ModulenotFounderRor: Không có mô -đun có tên ‘OpenPyxl,

Sau đó, bạn có thể sử dụng PIP để cài đặt & NBSP; OpenPyXL như sau:

pip3 install xlrd
2

Trong phần tiếp theo, bạn sẽ thấy một ví dụ đơn giản, trong đó:

  • Một khung dữ liệu sẽ được tạo từ đầu
  • Sau đó, DataFrame sẽ được xuất sang tệp Excel

Hãy nói rằng bạn có bộ dữ liệu sau đây về sản phẩm và giá của chúng:

Sản phẩm Giá bán
Máy tính desktop1200
Máy in150
Máy tính bảng300
Màn hình450

Mục tiêu cuối cùng là xuất bộ dữ liệu đó vào Excel.

Nhưng trước khi bạn xuất dữ liệu đó, bạn sẽ cần tạo một khung dữ liệu để ghi lại thông tin này bằng Python.

Sau đó, bạn có thể sử dụng cú pháp sau để tạo DataFrame:

pip3 install xlrd
3

Đây là cách mà DataFrame sẽ như thế nào:

pip3 install xlrd
4

Tiếp theo, bạn sẽ cần xác định đường dẫn mà bạn muốn lưu trữ tệp Excel đã xuất.

Ví dụ: đường dẫn bên dưới sẽ được sử dụng để lưu trữ tệp Excel đã xuất (lưu ý rằng bạn sẽ cần điều chỉnh đường dẫn để phản ánh vị trí nơi tệp Excel sẽ được lưu trữ trên máy tính của bạn):

r‘c: \ users \ ron \ Desktop \ export_dataframe.xlsx‘C:\Users\Ron\Desktop\export_dataframe.xlsx’

Lưu ý rằng 3 thành phần được tô sáng liên quan đến đường dẫn đó:

  • Trong màu vàng, ký tự ‘R, được đặt trước đường dẫn để tránh lỗi Unicode này: Cú phápSyntaxError: (unicode error) ‘unicodeescape’ codec can’t decode bytes in position 2-3: truncated \UXXXXXXXX escape
  • Trong màu xanh, tên tệp được tạo được chỉ định. Bạn có thể nhập một tên tệp khác dựa trên nhu cầu của bạn
  • Trong màu xanh lá cây, loại tệp được chỉ định. Vì chúng tôi đang xử lý một tệp Excel, loại tệp là ‘.xlsx, cho phiên bản mới nhất của Excel

Đặt mọi thứ lại với nhau, đây là mã Python đầy đủ cho & nbsp; xuất gấu trúc dữ liệu sang một tệp excel:

pip3 install xlrd
5

Cuối cùng, chạy mã trên trong Python (được điều chỉnh theo đường dẫn của bạn) và bạn sẽ nhận thấy rằng một tệp excel mới (được gọi là export_dataframe) sẽ được tạo tại vị trí mà bạn đã chỉ định.

Lưu ý rằng nếu bạn muốn bao gồm chỉ mục, thì chỉ cần xóa, index, index = false ra khỏi mã của bạn., index = False” from your code.

Tài nguyên bổ sung

Bạn chỉ thấy cách xuất gấu trúc DataFrame sang tệp Excel. Đôi khi, bạn có thể cần xuất bản dữ liệu gấu trúc sang tệp CSV. & NBSP; Khái niệm này sẽ khá giống nhau trong những trường hợp như vậy.

Bạn cũng có thể muốn & nbsp; kiểm tra tài liệu & nbsp; gandas để biết thêm thông tin về df.to_excel.