CodeGym /Khóa học Java /Python SELF VI /Xuất dữ liệu đã được lọc và xử lý sang Excel

Xuất dữ liệu đã được lọc và xử lý sang Excel

Python SELF VI
Mức độ , Bài học
Có sẵn

Hãy tưởng tượng rằng bạn là một nhà thám hiểm không gian, và dữ liệu là bản đồ bầu trời đầy sao của bạn. Nó phức tạp, rối rắm và cực kỳ cần thiết. Sau khi lọc và phân tích cẩn thận, những dữ liệu này cần được sắp xếp và lưu trữ trong một định dạng dễ đọc. Và đây là lúc anh hùng của chúng ta xuất hiện - xuất dữ liệu sang Excel. Nó cho phép bạn chia sẻ phát hiện của mình với đồng nghiệp hoặc chuẩn bị báo cáo cho một cuộc họp quan trọng. Trong thế giới mà dữ liệu là dầu mỏ mới, kỹ năng tạo báo cáo chỉ trong vài dòng code có thể đáng giá triệu đô.

1. Những điểm chính của việc xuất dữ liệu

Xuất dữ liệu sang Excel không chỉ là chuyển đổi từ định dạng này sang định dạng khác. Đây là cơ hội để tùy chỉnh báo cáo sao cho dễ sử dụng và dễ hiểu. Như một lập trình viên mà tôi quen đã nói: "Python có thể làm phép thuật, nhưng ngay cả Harry Potter cũng cần đũa phép". Trong trường hợp của chúng ta, đũa phép chính là phương thức to_excel từ thư viện pandas.

Những điều cơ bản về to_excel

Hãy bắt đầu với ví dụ đơn giản về xuất dữ liệu từ DataFrame sang tệp Excel. Giả sử chúng ta có một DataFrame chứa các bản ghi của người tham gia cuộc thi marathon:

Python

import pandas as pd

# Tạo DataFrame
data = {
    'Tên': ['Anna', 'Boris', 'Viktor', 'Galina'],
    'Tuổi': [29, 34, 22, 28],
    'Thành phố': ['Moscow', 'Saint-Petersburg', 'Kazan', 'Novosibirsk'],
    'Thời gian về đích': ['03:15:30', '03:45:10', '03:25:45', '03:50:05']
}

df = pd.DataFrame(data)

# Xuất DataFrame sang Excel
df.to_excel('marathon_participants.xlsx', index=False)

Trong ví dụ này, chúng ta đã tạo một DataFrame đơn giản và xuất nó sang tệp marathon_participants.xlsx. Hãy chú ý rằng chúng ta đã đặt tham số index=False để không xuất chỉ số của DataFrame sang Excel nếu không cần thiết.

Thêm định dạng và phong cách

Tiến lên cấp độ tiếp theo của kỹ năng - thêm phong cách. Ai đã nói rằng dữ liệu không thể đẹp mắt? Với thư viện pandasopenpyxl, bạn có thể dễ dàng định dạng bảng và thêm kiểu dáng.

Python

import pandas as pd
from openpyxl import Workbook

# Tạo DataFrame
data = {
    'Tên': ['Anna', 'Boris', 'Viktor', 'Galina'],
    'Tuổi': [29, 34, 22, 28],
    'Thành phố': ['Moscow', 'Saint-Petersburg', 'Kazan', 'Novosibirsk'],
    'Thời gian về đích': ['03:15:30', '03:45:10', '03:25:45', '03:50:05']
}

df = pd.DataFrame(data)

# Ghi vào Excel với định dạng
with pd.ExcelWriter('styled_marathon.xlsx', engine='openpyxl') as writer:
    df.to_excel(writer, index=False, sheet_name='Người tham gia')
    worksheet = writer.sheets['Người tham gia']
    for col in worksheet.columns:
        max_length = 0
        column = col[0].column_letter # lấy ký hiệu cột
        for cell in col:
            try:
                if len(str(cell.value)) > max_length:
                    max_length = len(cell.value)
            except:
                pass
        adjusted_width = (max_length + 2) * 1.2
        worksheet.column_dimensions[column].width = adjusted_width

Trong ví dụ này, chúng ta không chỉ xuất dữ liệu mà còn điều chỉnh độ rộng của các cột phù hợp với nội dung để chúng trông gọn gàng hơn trong Excel. Chúng ta dùng openpyxl để truy cập bảng và áp dụng phong cách.

Làm việc với nhiều bảng

Tạo báo cáo với nhiều bảng có vẻ như một nhiệm vụ khó khăn, nhưng thực ra khá đơn giản. Hãy tưởng tượng bạn muốn lưu trữ dữ liệu từ các cuộc thi hàng năm khác nhau trên các bảng riêng.

Python

import pandas as pd

# Dữ liệu cho các năm khác nhau
data_2022 = {
    'Tên': ['Dmitry', 'Elena'],
    'Tuổi': [30, 29],
    'Thành phố': ['Omsk', 'Vladivostok'],
    'Thời gian về đích': ['03:20:05', '03:35:40']
}

data_2023 = {
    'Tên': ['Igor', 'Katerina'],
    'Tuổi': [31, 27],
    'Thành phố': ['Chelyabinsk', 'Yekaterinburg'],
    'Thời gian về đích': ['03:29:10', '03:40:20']
}

df_2022 = pd.DataFrame(data_2022)
df_2023 = pd.DataFrame(data_2023)

# Ghi dữ liệu vào các bảng khác nhau
with pd.ExcelWriter('marathon_data.xlsx') as writer:
    df_2022.to_excel(writer, sheet_name='2022', index=False)
    df_2023.to_excel(writer, sheet_name='2023', index=False)

Đoạn code này tạo tệp marathon_data.xlsx với hai bảng, trên đó chứa dữ liệu của các năm khác nhau. Điều này rất tiện lợi để phân chia dữ liệu theo năm, dự án hoặc các danh mục khác.

2. Luôn có chỗ để cải thiện

Cố gắng suy nghĩ về cách tự động hóa việc xuất có thể được tích hợp vào các quá trình phức tạp hơn của dự án của bạn. Có lẽ bạn sẽ muốn thêm chức năng tạo biểu đồ tự động sau khi xuất? Hoặc tích hợp báo cáo với giao diện web để truy cập dễ dàng hơn?

Dù sao đi nữa, xuất dữ liệu sang Excel chỉ là điểm khởi đầu trên con đường tạo ra những báo cáo đẹp mắt và thông tin hữu ích, điều sẽ làm bạn trở thành một ngôi sao phân tích tại nơi làm việc hoặc trong học tập!

Bây giờ bạn đã có các công cụ để tự động hóa việc xuất dữ liệu, và bạn biết cách làm cho báo cáo của mình trong Excel dễ đọc hơn và trình bày tốt hơn. Vì vậy, hãy tiến lên và để dữ liệu của bạn luôn phục vụ bạn!

1
Опрос
Viết các truy vấn,  28 уровень,  4 лекция
недоступен
Viết các truy vấn
Viết các truy vấn
Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION