Tạo bảng docx python

Trang này xem cách lưu khung dữ liệu Pandas dưới dạng bảng trong tài liệu Word từ bên trong Python. Nhiều bit và phần định dạng khác cũng có thể được thực hiện đối với tài liệu Word và các đối tượng Python khác như chuỗi và số có thể được đưa vào để tạo báo cáo đầy đủ. Điều này có thể cực kỳ hữu ích khi bạn muốn hiển thị kết quả phân tích bằng Python cho đối tượng không có kỹ thuật

Các bước chúng ta cần làm theo là

  1. Nhập [các] gói yêu cầu
  2. Tạo khung dữ liệu
  3. Khởi tạo tài liệu Word
  4. Khởi tạo bảng sẽ đi vào tài liệu Word
  5. Thêm thông tin trong khung dữ liệu vào bảng trong tài liệu Word
  6. Xuất nó vào máy tính của bạn
  7. Tùy chỉnh định dạng của bảng
  8. Thêm nội dung vào tài liệu

Để thực hiện xuất, cần có gói docx. Cài đặt cái này từ thiết bị đầu cuối với

import pandas as pd
3 [thay thế
import pandas as pd
4 bằng phiên bản bạn có], sau đó tạo một tập lệnh Python mới nơi bạn bắt đầu bằng cách nhập nó

import docx

Tiếp theo, nhập gói pandas [cài đặt nó với

import pandas as pd
5] sẽ cho phép bạn tạo khung dữ liệu

import pandas as pd

Đây là thông tin cuối cùng bạn sẽ thêm dưới dạng bảng vào tài liệu Word. Đối với hướng dẫn này, chúng tôi sẽ sử dụng thông tin về các đơn vị SI làm ví dụ

# Create a data frame
si_units = {
    'Name': ['Second', 'Metre', 'Kilogram', 'Ampere', 'Kelvin', 'Mole', 'Candela'],
    'Symbol': ['s', 'm', 'kg', 'A', 'K', 'mol', 'cd'],
    'Quantity': [
        'Time', 'Length', 'Mass', 'Electric current', 'Thermodynamic temperature',
        'Amount of substance', 'Luminous intensity'
    ],
    'Emojii': ['🕒', '📏', '🏋️', '⚡', '🌡️', '⚛️', '💡']
}
df = pd.DataFrame[si_units]
print[df]
##        Name Symbol                   Quantity Emojii
## 0    Second      s                       Time      🕒
## 1     Metre      m                     Length      📏
## 2  Kilogram     kg                       Mass     🏋️
## 3    Ampere      A           Electric current      ⚡
## 4    Kelvin      K  Thermodynamic temperature     🌡️
## 5      Mole    mol        Amount of substance     ⚛️
## 6   Candela     cd         Luminous intensity      💡

Với gói docx đã nhập, giờ đây chúng ta có thể tạo một đối tượng tài liệu Word trống [mà chúng ta sẽ gọi là

import pandas as pd
6] bằng cách sử dụng hàm
import pandas as pd
7

# Initialise the Word document
doc = docx.Document[]

Tạo một đối tượng bảng trống và thêm nó vào tài liệu bằng hàm

import pandas as pd
8. Khi thực hiện việc này, bạn cần cho hàm biết có bao nhiêu hàng và cột mà bảng trong tương lai của bạn sẽ có;

# Initialise the table
t = doc.add_table[rows=df.shape[0], cols=df.shape[1]]

Điều này có thể được thực hiện dễ dàng nhất bằng cách lặp qua mọi ô trong khung dữ liệu và thêm nội dung của từng ô vào ô tương ứng trong bảng

# Add the body of the data frame to the table
for i in range[df.shape[0]]:
    for j in range[df.shape[1]]:
        cell = df.iat[i, j]
        t.cell[i, j].text = str[cell]

# Save the Word doc
doc.save['table 1.docx']

Tài liệu Word của bạn sẽ trông như thế này

Bạn sẽ nhận thấy rằng bảng trên không bao gồm tiêu đề cột. Để có những thứ này, bảng cần được tạo với một hàng bổ sung ở trên cùng chứa đầy tên của chuỗi từ khung dữ liệu

# Initialise the Word document
doc = docx.Document[]
# Initialise the table
t = doc.add_table[rows=[df.shape[0] + 1], cols=df.shape[1]]
# Add the column headings
for j in range[df.shape[1]]:
    t.cell[0, j].text = df.columns[j]
# Add the body of the data frame
for i in range[df.shape[0]]:
    for j in range[df.shape[1]]:
        cell = df.iat[i, j]
        t.cell[i + 1, j].text = str[cell]
# Save the Word doc
doc.save['table 2.docx']

Lưu ý rằng bạn không phải khởi tạo bảng với số hàng chính xác;

Các công ty lớn và nhỏ tạo báo cáo hàng ngày bằng các công cụ Microsoft Office như Word và Excel. Trong bài viết này, tôi sẽ cung cấp giải thích từ đầu đến cuối về cách tạo bảng dữ liệu trong MS Word thông qua Python

Tôi sẽ xem xét một tình huống trong đó chúng tôi có một số bài báo và chúng tôi cần tạo một tài liệu Word với các bảng chứa số liệu thống kê được trích xuất từ ​​các bài báo này. Một số số liệu thống kê này là. số từ, số câu và độ dài trung bình của từ

phụ thuộc

Trong ví dụ này, tôi đã sử dụng Python 3. 7. Phần phụ thuộc duy nhất bạn cần cài đặt là python-docx. Bạn có thể cài đặt phần phụ thuộc này bằng cách gửi lệnh sau trong thiết bị đầu cuối của máy

pip install python-docx

Trích xuất số liệu thống kê từ các bài báo

Trong ví dụ này, tôi đã chọn ngẫu nhiên hai bài báo thể thao từ CNN. Để trích xuất số liệu thống kê, tôi đã viết hàm describe_text[text] bên dưới. Hàm này nhận một tham số chuỗi [bài viết, đánh giá,…] và trả về một từ điển thống kê như Số ký tự, Số từ, Số câu, v.v.

Tạo bảng

Trước tiên, bạn cần khởi tạo một đối tượng tài liệu thông qua lớp Document. Đối với mỗi bài báo, trích xuất số liệu thống kê bằng cách gọi hàm describe_text[text] và tạo bảng thông qua hàm add_table[row, columns]. Đối với mọi chỉ số trong từ điển, hãy tạo một hàng thông qua hàm add_row[] và thêm các chỉ số tương ứng. Cuối cùng, thêm dấu ngắt trang ở cuối bằng cách gọi hàm add_page_break[] để hiển thị mỗi bảng trong một trang mới

Để biết thêm số liệu thống kê văn bản với các hàm Python thuần túy, hãy xem bài viết khác của tôi bên dưới

10 hàm Python thuần túy để phân tích văn bản đặc biệt

Bóp dữ liệu văn bản mà không cần thư viện bên ngoài

hướng tới khoa học dữ liệu. com

Phần kết luận

Tạo tài liệu từ với Python thật dễ dàng. Tất cả những gì bạn cần là thư viện python-docx. Thư viện này cung cấp khả năng thực hiện hầu hết mọi thứ [nhưng không phải tất cả] mà bạn có thể thực hiện trong MS Word

Theo kinh nghiệm của tôi, tôi đã tạo hàng nghìn tài liệu Word với số trang hai chữ số chỉ trong vài giây. Tôi đã làm điều này để sắp xếp dữ liệu nhật ký ở định dạng dễ đọc hơn hoặc trình bày các phát hiện bằng văn bản sau khi phân tích dữ liệu văn bản đánh giá sản phẩm

Làm cách nào để tạo bảng trong docx python?

Dưới đây là cách thêm bảng. .
add_table[hàng=2, cols=2]
ô = bảng. ô[0, 1]
tế bào. text = 'con vẹt, có thể đã chết'
hàng = bảng. hàng[1] hàng. ô[0]. .
cho hàng trong bảng. hàng. cho ô trong hàng. .
row_count = len[bảng. hàng] col_count = len[bảng. .
hàng = bảng. thêm dòng[]
bàn. style = 'LightShading-Dấu1'

Làm cách nào để tạo bảng trong python?

Tạo bảng bằng python .
Thiết lập kết nối với cơ sở dữ liệu bằng phương thức connect[]
Tạo một đối tượng con trỏ bằng cách gọi phương thức con trỏ [] trên đối tượng kết nối đã tạo ở trên
Bây giờ hãy thực thi câu lệnh CREATE TABLE bằng phương thức exec[] của lớp Cursor

Làm cách nào để trích xuất bảng từ docx bằng python?

Trích xuất bảng từ tài liệu DOCX Word trong python . Sau đó, mã này nên làm. từ docx nhập Tài liệu document = Document ['myfile. docx'] cho bảng trong tài liệu. bảng. print[] cho hàng trong bảng .

Làm cách nào để chỉnh sửa docx bằng python?

Cách chỉnh sửa DOCX .
Cài đặt Trình chỉnh sửa DOCX cho Python
Thêm tham chiếu thư viện [nhập thư viện] vào dự án Python của bạn
Mở DOCX bằng Python
Chèn nội dung vào đầu tài liệu DOCX
Gọi phương thức 'save[]', chuyển tên của tệp đầu ra với phần mở rộng được yêu cầu
Nhận kết quả đã chỉnh sửa

Chủ Đề