Trình soạn thảo Excel bằng Python

Python Pandas là một thư viện phân tích dữ liệu. Nó có thể đọc, lọc và sắp xếp lại các tập dữ liệu lớn và nhỏ, đồng thời xuất chúng ở nhiều định dạng, bao gồm cả Excel. The ExcelWriter[] được định nghĩa trong thư viện Pandas

Trong ví dụ này, bạn đã cài đặt thư viện Numpy và Pandas trên máy của mình

cú pháp

pandas.ExcelWriter[path, engine= None, date_format=None, datetime_format=None, mode=’w’,**engine_krawgs]

Thông số

Tất cả các tham số được đặt thành giá trị mặc định

gấu trúc. Hàm ExcelWriter[] có năm tham số

  1. con đường. Nó thuộc loại chuỗi, cho biết đường dẫn đến tệp xls hoặc xlsx
  2. động cơ. Nó cũng thuộc loại chuỗi và hoàn toàn không bắt buộc. Nó là động cơ để sử dụng để viết
  3. Định dạng ngày tháng. Nó cũng thuộc kiểu chuỗi và có giá trị mặc định là Không có. Nó định dạng chuỗi cho các ngày được ghi vào Tệp Excel
  4. datetime_format. Nó cũng thuộc kiểu chuỗi và có giá trị mặc định là Không có. Nó định dạng chuỗi cho các đối tượng ngày giờ được ghi vào Tệp Excel
  5. Cách thức. Đó là chế độ của một tệp để sử dụng đó là ghi hoặc nối thêm. Giá trị mặc định của nó là viết, đó là 'w'

Giá trị trả về

Nó xuất dữ liệu thành tệp Excel

Chương trình ví dụ trên Pandas ExcelWriter[]

Bạn phải cài đặt và nhập mô-đun xlsxwriter. Nếu bạn đang chạy sổ ghi chép Jupyter, thì bạn sẽ không cần đến nó; . Bạn có thể tìm thấy hướng dẫn cài đặt ở đây

Viết chương trình hiển thị hoạt động của hàm ExcelWriter[] trong Python

import pandas as pd
import numpy as np
import xlsxwriter

# Creating dataset using dictionary
data_set = {
    'Name': ['Rohit', 'Arun', 'Sohit', 'Arun', 'Shubh'],
    'Roll no': ['01', '02', '03', '04', np.nan],
    'maths': ['93', '63', np.nan, '94', '83'],
    'science': ['88', np.nan, '66', '94', np.nan],
    'english': ['93', '74', '84', '92', '87']}

# Converting into dataframe
df = pd.DataFrame[data_set]

# Writing the data into the excel sheet
writer_obj = pd.ExcelWriter['Write.xlsx',
                            engine='xlsxwriter']

df.to_excel[writer_obj, sheet_name='Sheet']

writer_obj.save[]
print['Please check out the Write.xlsx file.']

đầu ra

Please check out the Write.xlsx file.

Nội dung file excel như sau

Trong đoạn mã trên, chúng ta đã tạo một DataFrame lưu trữ dữ liệu của sinh viên. Sau đó, chúng tôi đã tạo một đối tượng nhà văn để ghi dữ liệu của DataFrame vào một trang tính excel và sau khi ghi dữ liệu vào trang tính, chúng tôi đã lưu trang tính. Một số giá trị trong bảng excel ở trên trống vì trong DataFrame, các giá trị đó là np. nan. Để kiểm tra dữ liệu của DataFrame, hãy kiểm tra bảng excel.

Pandas DataFrame to_excel[]

Hàm Pandas DataFrame to_excel[] ghi một đối tượng vào trang tính Excel. Chúng tôi đã sử dụng hàm to_excel[] trong ví dụ trên vì phương thức ExcelWriter[] trả về đối tượng nhà văn và sau đó chúng tôi sử dụng DataFrame. to_excel[] để xuất nó thành tệp Excel

Để 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, bạn phải tạo đối tượng ExcelWriter có tên tệp đích và chỉ định trang tính trong tệp để ghi vào

Có thể ghi nhiều trang tính bằng cách chỉ định tên_trang tính duy nhất. Với tất cả dữ liệu được ghi vào một 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 và sẽ dẫn đến nội dung của tệp hiện có bị xóa

Chúng ta cũng có thể viết ví dụ trên bằng Python với câu lệnh

import pandas as pd
import numpy as np
import xlsxwriter

# Creating dataset using dictionary
data_set = {
    'Name': ['Rohit', 'Arun', 'Sohit', 'Arun', 'Shubh'],
    'Roll no': ['01', '02', '03', '04', np.nan],
    'maths': ['93', '63', np.nan, '94', '83'],
    'science': ['88', np.nan, '66', '94', np.nan],
    'english': ['93', '74', '84', '92', '87']}

# Converting into dataframe
df = pd.DataFrame[data_set]

with pd.ExcelWriter['WriteWith.xlsx', engine='xlsxwriter'] as writer:
    df.to_excel[writer, sheet_name='Sheet']

print['Please check out the WriteWith.xlsx file.']

đầu ra

Please check out the WriteWith.xlsx file.

Bạn có thể kiểm tra WriteWith. xlsx và xem nội dung của nó. Nó sẽ giống như Viết. tập tin xlsx

Viết nhiều DataFrames vào nhiều trang tính

Trong ví dụ trên, chúng tôi chỉ thấy một trang tính cho một Khung dữ liệu duy nhất. Chúng tôi có thể viết nhiều Khung với nhiều trang tính bằng Pandas. ExcelWriter.  

Hãy viết một ví dụ trong đó chúng ta sẽ tạo ba DataFrames và lưu các DataFrames đó trong nhiều trang tính. xlsx có ba trang tính khác nhau

import pandas as pd
import numpy as np
import xlsxwriter

# Creating dataset using dictionary
data_set = {
    'Name': ['Rohit', 'Arun', 'Sohit', 'Arun', 'Shubh'],
    'Roll no': ['01', '02', '03', '04', np.nan],
    'maths': ['93', '63', np.nan, '94', '83'],
    'science': ['88', np.nan, '66', '94', np.nan],
    'english': ['93', '74', '84', '92', '87']}

data_set2 = {
    'Name': ['Ankit', 'Krunal', 'Rushabh', 'Dhaval', 'Nehal'],
    'Roll no': ['01', '02', '03', '04', np.nan],
    'maths': ['93', '63', np.nan, '94', '83'],
    'science': ['88', np.nan, '66', '94', np.nan],
    'english': ['93', '74', '84', '92', '87']}

data_set3 = {
    'Name': ['Millie', 'Jane', 'Michael', 'Bobby', 'Brown'],
    'Roll no': ['01', '02', '03', '04', np.nan],
    'maths': ['93', '63', np.nan, '94', '83'],
    'science': ['88', np.nan, '66', '94', np.nan],
    'english': ['93', '74', '84', '92', '87']}

# Converting into dataframe
df = pd.DataFrame[data_set]
df2 = pd.DataFrame[data_set2]
df3 = pd.DataFrame[data_set3]

with pd.ExcelWriter['multiplesheet.xlsx', engine='xlsxwriter'] as writer:
    df.to_excel[writer, sheet_name='Sheet']
    df2.to_excel[writer, sheet_name='Sheet2']
    df3.to_excel[writer, sheet_name='Sheet3']

print['Please check out the multiplesheet.xlsx file.']

đầu ra

Bạn có thể thấy rằng có ba trang tính và mỗi trang tính có các cột Tên khác nhau

Hàm to_excel[] chấp nhận sheet_name làm tham số và ở đây chúng ta có thể chuyển ba tên trang tính khác nhau và DataFrame đó được lưu trong các trang tính tương ứng

Phần kết luận

Nếu bạn muốn xuất Pandas DataFrame sang tệp Excel, thì lớp ExcelWriter[] là tất cả những gì bạn cần. Lớp ExcelWrite[] cung cấp đối tượng người viết, sau đó chúng ta có thể sử dụng hàm to_excel[] để xuất DataFrame sang tệp Excel. Đó là nó cho Pandas. Lớp ExcelWriter

Xem thêm

Cách tải tệp CSV trong Pandas

Gấu trúc to_json[]

Pandas DataFrame sang CSV

Facebook

Twitter

Pinterest

WhatsApp

Bài viết trước Cách tạo ID ngẫu nhiên bằng UUID trong Python

Bài viết tiếp theo Phương thức mô tả khung dữ liệu Pandas[] trong ví dụ về Python

Ankit Lathiya

Ankit Lathiya là Bậc thầy về Ứng dụng Máy tính theo chuyên môn và là Nhà phát triển Android và Laravel chuyên nghiệp, đồng thời là một trong những tác giả của blog này

Bạn có thể sử dụng Excel để viết Python không?

PyXLL là một phần bổ trợ Excel cho phép bạn chạy Python trong Excel . Sử dụng Microsoft Excel làm giao diện người dùng thân thiện với mã Python của bạn. Không có VBA, chỉ có Python.

Sự khác biệt giữa openpyxl và XlsxWriter là gì?

XlsxWriter so với openpyxl. Sự khác biệt là gì? . Mô-đun Python để tạo tệp Excel XLSX. Mặt khác, openpyxl được mô tả chi tiết là "Thư viện Python để đọc/ghi tệp Excel 2010 xlsx/xlsm"

Excel_writer là gì?

lớp pandas ExcelWriter[] được dùng để lưu DataFrame vào trang tính Excel . Lớp này chủ yếu được sử dụng khi bạn muốn lưu nhiều trang tính và nối thêm dữ liệu vào trang tính Excel hiện có.

Làm cách nào để cài đặt XlsxWriter trong Python?

Cài đặt XlsxWriter bằng PIP. Phương pháp cài đặt XlsxWriter dễ dàng và được khuyên dùng nhất là sử dụng trình cài đặt PIP. .
Cài đặt từ Tarball. Một tùy chọn khác là cài đặt XlsxWriter từ mã nguồn của nó, được lưu trữ tại https. //github. com/jmcnamara/XlsxWriter/. .
Nhân bản từ GitHub

Chủ Đề