Hướng dẫn how to store table data in python - cách lưu trữ dữ liệu bảng trong python

Bài viết này đã được xuất bản như một phần của & NBSP; Data Science Blogathon.

Python là một ngôn ngữ lập trình tuyệt vời để tự động hóa công cụ. Nó chứa nhiều thư viện cho phép bạn tạo mã tái sử dụng tuyệt vời. Một thư viện như vậy là Python-docx.

Thư viện này rất hữu ích cho một loạt các tác vụ xử lý tài liệu, chẳng hạn như:

1. Thêm tiêu đề

2. Đọc đoạn văn

3. Viết đoạn văn

4. Thêm hình ảnh

5. Tạo và lưu tệp tài liệu

6. Tìm và thay thế văn bản

7. Thao tác với tệp tài liệu hiện có

8. Thêm ngắt trang, và nhiều hơn nữa.

Tuy nhiên, trong bài viết này, chúng tôi sẽ thảo luận về một chức năng cụ thể của thư viện DOCX trong Python. Chúng tôi sẽ tạo một tập lệnh Python theo cách mà nó sẽ tạo ra nhiều khung dữ liệu như số lượng bảng để các bảng này có thể được lưu trữ dưới dạng các tệp riêng biệt (có thể là CSV) và có ích để sử dụng. Mặc dù thư viện Python-DOCX có thể tạo và cập nhật các tệp Microsoft Word, chúng tôi sẽ sử dụng nó để-

1. In từng đoạn trong tài liệu.

2. Đọc tất cả các bảng trong tài liệu Word và chuyển đổi chúng thành các khung dữ liệu.

3. In số từ của từng đoạn và số từ tổng thể của tài liệu.

Tài liệu cho thư viện bị hạn chế nhưng có thể đọc thêm thông qua liên kết này: https://python-docx.readthedocs.io/en/latest/

Hiểu khung dữ liệu

Trước khi chúng tôi bắt đầu với mã thực tế, chúng tôi sẽ thảo luận ngắn gọn về các khung dữ liệu. Khung dữ liệu là cấu trúc dữ liệu bảng hai chiều. Nó bao gồm các hàng và cột. Nó bao gồm các yếu tố không đồng nhất. Ví dụ: nếu chúng tôi xem xét khung dữ liệu của nhân viên. Các cột có thể là tên gọi tên là người khác Cấu trúc kết quả của khung dữ liệu trên như sau -

Hướng dẫn how to store table data in python - cách lưu trữ dữ liệu bảng trong python

Từ hình trên, chúng ta thấy các thành phần không đồng nhất. Chẳng hạn như tên là dữ liệu loại chuỗi, tuổi là số, giới tính là một ký tự, tiền lương là gấp đôi và ngày tham gia là trường loại ngày.

Chúng tôi có thể tạo khung dữ liệu bằng danh sách, từ điển hoặc đơn giản là nhập tệp. Phần lớn phân tích dữ liệu, thao tác dữ liệu, trích xuất, v.v., có thể được thực hiện sau khi nhận dữ liệu dưới dạng khung dữ liệu.

Chúng tôi sẽ sử dụng tài liệu sau đây để mã hóa, như được hiển thị bên dưới. Tài liệu này chứa hai bảng. Do đó, mã của chúng tôi cũng sẽ tạo hai khung dữ liệu.

Hiểu các chức năng trong Python

Hàm là một tập hợp các lệnh thực hiện một nhiệm vụ nhất định. Các chức năng tránh lặp lại và là một cách tuyệt vời để tạo ra các thành phần có thể tái sử dụng. Nó chia chương trình thành các mô -đun. Nó làm cho mã dễ dàng hơn để quản lý và hiểu. Các chức năng được viết bằng Python bằng cách sử dụng từ khóa là def def. Nó được theo sau bởi tên hàm độc đáo và các đối số truyền. Một đại tràng (:) đánh dấu phần cuối của tiêu đề chức năng. Một chức năng có thể có hoặc không có câu lệnh trả lại. Một câu lệnh trả về đánh dấu lối ra của hàm. Và sau đó kiểm soát trở về nơi gọi. Nó phụ thuộc vào bản chất của nhiệm vụ mà chức năng được viết. Chúng ta có thể gọi chức năng trong một chức năng hoặc chương trình khác bằng tên chức năng. Chúng ta có thể vượt qua các tham số nếu hàm được xác định để chấp nhận tham số.

Trong bài viết của chúng tôi, chúng tôi đã xác định một hàm có tên là Creat Creat_DF_From_Table. Nó chấp nhận hai đối số hoặc tham số. Họ là những người khác C C và Tab Tab. Tham số đầu tiên là một số nguyên có giá trị bắt đầu bằng 0. Tham số thứ hai là đầu ra bảng từ tài liệu. những cái bàn".

Thực hiện

1. Nhập thư viện

Chúng tôi sẽ sử dụng hai thư viện - docx và gấu trúc. Python-DOCX là một thư viện Python có thể xử lý các tệp Microsoft Word. Pandas là một thư viện Python được sử dụng để phân tích dữ liệu.

import docx
import pandas as pd

2. Đọc tài liệu từ

Hãy để chúng tôi tạo một tệp tài liệu từ mẫu với tên TestDoc.Docx. Tệp tài liệu này chứa một tiêu đề. Có hai bảng và hai đoạn văn. Bảng đầu tiên có bốn hàng và ba cột, không bao gồm hàng tiêu đề. Bảng thứ hai có hai hàng và hai cột, không bao gồm hàng tiêu đề. Đối tượng tài liệu của người Viking được sử dụng để đọc tệp docx.

document = docx.Document('testdoc.docx')

3. In đoạn văn

Có hai đoạn văn trong tài liệu. Tiêu đề cũng được coi là một đoạn. Hai bảng có trong tài liệu không được xem là một đoạn văn trong mô -đun DOCX. Hai đoạn cùng với tiêu đề tài liệu được hiển thị khi các lệnh bên dưới được chạy.

para_text_list = []
for each_par in the document.paragraphs:
    print(each_par.text)
    para_text_list.append(each_par.text)

4. Tạo khung dữ liệu từ bảng

Chúng tôi sẽ tạo một chức năng có thể sử dụng lại để đọc các bảng. Chức năng của chúng tôi nên được tạo theo cách mà nó tìm thấy tất cả các bảng trong tài liệu và tạo các khung dữ liệu riêng cho tất cả. Trong định nghĩa này, chúng tôi giả định rằng mỗi bảng có một tiêu đề. Hàng đầu tiên sẽ được coi là tên cột và phần còn lại của chúng là giá trị hàng. Chúng tôi sẽ tiền tố các tên khung dữ liệu của chúng tôi với kết quả của Google_df_ và số lượng bắt đầu bằng 0. Ví dụ: nếu có ba bảng trong tài liệu từ, thì các tên khung dữ liệu được tạo là result_df_0, result_df_1 và result_df_2.

def create_df_from_table(c, tab):
    list_name = str(c)+"_result_list"
    list_name = []
    for i,each_row in enumerate(each_tab.rows):
        text = (each_cell.text for each_cell in each_row.cells)
        if i == 0:
            keys = tuple(text)
        else:
            each_dict_val = dict(zip(keys, text))
            list_name.append(each_dict_val)
    result_df = pd.DataFrame(list_name)
    return result_df
for c, each_tab in enumerate(document.tables):
    globals()[f'result_df_{c}'] = create_df_from_table(c, each_tab)

Hai khung dữ liệu được tạo như hình dưới đây.

5. Đọc số từ của từng đoạn và số lượng từ

Chúng tôi sẽ tính độ dài của từng phần của tài liệu từ. Chức năng của LEN LEN và các chức năng của Sum Sum được sử dụng để tìm số từ.

words_each_list = [len(each_sent.split()) for each_sent in para_text_list]
print(words_each_list)
total_no_of_words = sum(words_each_list)
print(total_no_of_words)

Ưu điểm của việc tạo mã tái sử dụng

Trong bài viết này, chúng tôi đã cố gắng tạo đoạn mã có thể hoạt động cho bất kỳ bảng nào trong tài liệu Word. Đây là những lợi ích tiềm năng của việc tạo mã có thể sử dụng lại-

1. Lưu thời gian phát triển - Viết đoạn trích có thể được tích hợp và sử dụng trong một ứng dụng khác dẫn đến tiết kiệm đủ thời gian để phát triển quan trọng hơn.

2. Cung cấp cấu trúc - Trong khi tất cả các mã tự động hóa có thể được đặt ở một nơi duy nhất, nó mang lại cho các nhà phát triển một cái nhìn tốt và khả năng hiểu.

3. Giảm rủi ro - Khi mã được phát triển, nó sẽ trải qua kiểm tra lỗ hổng trước khi triển khai. Những kiểm tra này có thể dễ dàng tránh được.

4. Dễ dàng bảo trì - Thật dễ dàng để duy trì sản phẩm. Một sửa chữa ở một nơi có thể dẫn đến một bản sửa lỗi tổng thể cho tất cả các thành phần được liên kết với nhau.

5. Một cách làm việc hiệu quả - các chức năng có thể được giữ tại một vị trí trung tâm và có thể được sử dụng khi cần thiết. Điều này sẽ làm cho chương trình mô -đun và gọn gàng hơn.

Trong bài viết này,

1. & nbsp; chúng tôi đã khám phá thư viện docx -

A) Thư viện DOCX có thể được cài đặt trong Python bằng PIP Cài đặt Python-DOCX.

b) Các hành động như lưu tệp docx, thêm các đoạn văn, làm nổi bật các cụm từ trong tài liệu, thêm hình ảnh vào tài liệu, thêm tiêu đề, thay đổi thuộc tính phông chữ, v.v., có thể được thực hiện bằng mô -đun Docx.

c) Chúng tôi đã tạo một chức năng có thể sử dụng lại để chuyển đổi tất cả các bảng thành các khung dữ liệu.

2. & NBSP; Chúng tôi đã tạo ra một sự hiểu biết ngắn gọn về các khung dữ liệu.We created a brief understanding of data frames.

3. & nbsp; đã thảo luận về tầm quan trọng của việc viết các mã có thể sử dụng lại.Discussed the importance of writing re-usable codes.

Đọc thêm bài viết trên blog của chúng tôi.

Hình ảnh Nguồn: Tác giả

Các phương tiện truyền thông được hiển thị trong bài viết này không thuộc sở hữu của Analytics Vidhya và được sử dụng theo quyết định của tác giả.

Làm thế nào để Python lưu trữ dữ liệu trong một bảng?

Chèn dữ liệu vào bảng MySQL bằng Python..
Nhập MySQL. Gói đầu nối ..
Tạo một đối tượng kết nối bằng MySQL. kết nối. ....
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 được tạo ở trên ..
Sau đó, thực thi câu lệnh chèn bằng cách chuyển nó dưới dạng tham số cho phương thức exec () ..

Làm thế nào để bạn tạo một bảng dữ liệu trong Python?

Cách dễ nhất để tạo các bảng trong Python là sử dụng hàm Table () từ thư viện bảng ...
Để sử dụng chức năng này, trước tiên chúng ta phải cài đặt thư viện bằng PIP: PIP Cài đặt Tabulation ..
Sau đó, chúng ta có thể tải thư viện: từ bảng nhập bảng lập bảng ..

Làm thế nào để bạn lưu trữ dữ liệu trong một khung dữ liệu mới trong Python?

Phương thức - 3: Tạo DataFrame từ Dict of Ndarray/Danh sách..
Nhập Gandas dưới dạng PD ..
# gán dữ liệu danh sách ..
data = {'name': ['tom', 'joseph', 'krish', 'john'], 'tuổi': [20, 21, 19, 18]}.
# Tạo DataFrame ..
df = pd.dataframe (dữ liệu).
# In đầu ra ..
print(df).

Làm thế nào để bạn hiển thị dữ liệu ở định dạng bảng trong Python?

In một cái bàn trong Python..
Tabulation.Gói Tabulation là gói Python được sử dụng rộng rãi nhất cho các danh sách lập bảng;Nó có nhiều tùy chọn để chỉ định các tiêu đề và định dạng bảng.....
Đẹp.PrettyTable là một gói phục vụ một mục đích tương tự với gói Tabulation.....
texttable..