Các tệp Excel vẫn là một trong những định dạng phổ biến nhất để quản lý dữ liệu có cấu trúc. Trong Python, DataFrame của pandas là cấu trúc được ưa chuộng để tổ chức và phân tích dữ liệu một cách hiệu quả. Khi đã được chuyển đổi thành DataFrame, dữ liệu Excel có thể dễ dàng được kết hợp với cơ sở dữ liệu, API hoặc mô hình học máy để phân tích và thu thập thông tin sâu hơn. Trong bài viết này, chúng ta sẽ khám phá những cách thực tế để chuyển đổi Excel sang DataFrame của pandas với những ví dụ rõ ràng để giúp bạn bắt đầu.
What is a Pandas DataFrame?
Một DataFrame là một cấu trúc dữ liệu 2 chiều được cung cấp bởi thư viện pandas. Nó trông giống như một bảng tính Excel với các hàng và cột. Mỗi cột có thể chứa các loại dữ liệu khác nhau, chẳng hạn như chuỗi, số nguyên hoặc số thực.
DataFrames là lý tưởng cho:
- Nhập khẩu và làm sạch dữ liệu.
- Thực hiện các phép toán toán học.
- Lọc, nhóm, và tổng hợp dữ liệu.
- Xuất kết quả sang Excel, CSV hoặc cơ sở dữ liệu.
Khi bạn chuyển đổi các tệp Excel thành DataFrames, bạn có thể ngay lập tức áp dụng các thao tác pandas mạnh mẽ để phân tích.
Thư viện Python để chuyển đổi Excel thành Pandas DataFrame
Aspose.Cells for Python via .NET thường được coi là thư viện Excel Python tốt nhất cho các nhà phát triển cần nhiều hơn là xử lý bảng tính cơ bản. Nó cho phép bạn tạo, đọc, chỉnh sửa và chuyển đổi các tệp Excel một cách programmatically mà không cần cài đặt Microsoft Excel.
Đối với các chuyển đổi DataFrame, thư viện này nổi bật vì nó hoàn toàn hỗ trợ các tính năng Excel nâng cao như công thức, ô hợp nhất, biểu đồ, bảng pivot và định dạng có điều kiện. Nó hoạt động với nhiều định dạng, bao gồm XLS, XLSX, XLSB, ODS, CSV, và JSON.
Khi bạn sử dụng Aspose.Cells để đưa dữ liệu Excel vào pandas, bạn nhận được một chuyển đổi mượt mà thành DataFrame với độ trung thực cao. Điều này có nghĩa là cấu trúc, định dạng và giá trị của Excel của bạn vẫn chính xác, trong khi pandas cung cấp cho bạn các công cụ để phân tích và biến đổi dữ liệu đó một cách hiệu quả.
Chuyển đổi Excel thành DataFrame Pandas
Bạn có thể tạo một bảng tính mới, tạo dữ liệu một cách lập trình, và chuyển đổi Excel thành một pandas DataFrame trong Python. Điều này giúp bạn kiểm soát hoàn toàn cấu trúc của tệp trong khi chuẩn bị cho việc phân tích ngay lập tức trong pandas.
Làm theo các bước dưới đây để chuyển đổi Excel thành Pandas DataFrame:
- Tạo một thể hiện của lớp
Workbook. - Truy cập vào bảng tính đầu tiên và các ô của nó.
- Thêm giá trị vào các ô bảng tính.
- Extract rows and headers.
- Chuyển đổi dữ liệu được trích xuất thành một DataFrame pandas.
Mã Python dưới đây minh họa cách chuyển đổi Excel thành DataFrame của pandas:
import pandas as pd
from aspose.cells import Workbook
# Bước 1: Tạo một workbook Excel mới bằng cách sử dụng Aspose.Cells
wb = Workbook()
# Bước 2: Truy cập vào trang tính đầu tiên
ws = wb.worksheets.get(0)
# Bước 3: Truy cập vào bộ sưu tập ô của bảng tính
c = ws.cells
# Bước 4: Thêm dữ liệu mẫu vào bảng tính
c.get("A1").value, c.get("B1").value, c.get("C1").value = "Name", "Age", "City"
c.get("A2").value, c.get("B2").value, c.get("C2").value = "Alice", 25, "New York"
c.get("A3").value, c.get("B3").value, c.get("C3").value = "Bob", 30, "San Francisco"
c.get("A4").value, c.get("B4").value, c.get("C4").value = "Charlie", 35, "Los Angeles"
# Bước 5: Lấy tiêu đề từ hàng dữ liệu đầu tiên
header_idx = c.min_data_row
columns = [cell.value for cell in c.rows[header_idx]]
# Bước 6: Thu thập các hàng còn lại làm dữ liệu
data = [
[cell.value for cell in row]
for idx, row in enumerate(c.rows)
if row and idx != header_idx
]
# Bước 7: Tạo DataFrame trong một lần duy nhất
df = pd.DataFrame(data, columns=columns)
print(df)
Output
Name Age City
0 Alice 25 New York
1 Bob 30 San Francisco
2 Charlie 35 Los Angeles
Chuyển đổi một tệp Excel hiện có thành DataFrame Pandas
Nếu bạn đã có một tệp Excel, bạn có thể tải nó lên và chuyển đổi Excel thành một DataFrame pandas trong Python trực tiếp. Điều này cho phép bạn duy trì cấu trúc trang gốc trong khi làm việc với dữ liệu một cách hiệu quả hơn trong pandas.
Làm theo các bước dưới đây để tải và chuyển đổi một tệp Excel hiện có thành một DataFrame của Pandas:
- Mở một tệp Excel hiện có bằng cách sử dụng lớp
Workbook. - Chọn một bảng tính theo tên hoặc chỉ số.
- Đọc tất cả các hàng và cột.
- Extract headers if available.
- Chuyển kết quả thành DataFrame pandas.
Mã Python sau đây cho thấy cách chuyển đổi một tệp Excel hiện có thành DataFrame của pandas:
import pandas as pd
from aspose.cells import Workbook
# Bước 1: Tải sổ làm việc Excel từ tệp
workbook = Workbook("PandasTest.xlsx")
# Bước 2: Chọn bảng tính (theo chỉ số hoặc theo tên)
worksheet = workbook.worksheets.get("Sheet1") # or workbook.worksheets[0]
# Bước 3: Lấy bộ tế bào từ bảng tính
cells = worksheet.cells
# Bước 4: Tính số cột (sự khác biệt chỉ số bắt đầu từ 0)
col_count = cells.max_data_column - cells.min_data_column
# Bước 5: Tạo một danh sách để lưu trữ dữ liệu hàng
output_data = []
# Bước 6: Tìm chỉ số của hàng đầu tiên có dữ liệu
first_data_row_index = cells.min_data_row
# Bước 7: Lặp qua tất cả các hàng trong bảng tính
for row in cells.rows:
if row is None:
continue # Skip uninitialized rows
# Thu thập tất cả các giá trị ô cho hàng hiện tại
row_data = [cell.value for cell in row]
output_data.append(row_data)
# Bước 8: Chuẩn bị tiêu đề cột
columns = []
if True: # Use header row
row = cells.rows[first_data_row_index]
for cell in row:
columns.append(cell.value)
# Xóa hàng tiêu đề khỏi dữ liệu
output_data = output_data[1:]
else:
# Nếu không có tiêu đề, hãy gán tên cột mặc định.
columns = [f"Unnamed: {i}" for i in range(col_count + 1)]
# Bước 9: Chuyển đổi dữ liệu thành một DataFrame của pandas
df = pd.DataFrame(output_data, columns=columns)
# Bước 10: In DataFrame
print(df)

Tệp Excel mẫu để chuyển đổi thành DataFrame Pandas.
Output
Product A Product B Period
0 50 160 Q1
1 100 32 Q2
2 170 50 Q3
3 300 40 Q4
Chuyển đổi Excel sang Pandas qua JSON
Xuất phạm vi Excel của bạn sang JSON với
JsonUtility.exportrangetojson, sau đó tải nó vào Pandas. Xem hướng dẫn từng bước: Chuyển đổi Excel thành Pandas DataFrame thông qua JSON.
Chuyển đổi Excel sang Pandas qua CSV
Chuyển tệp Excel của bạn sang định dạng CSV và sau đó tải nó vào Pandas. Làm theo hướng dẫn từng bước: Convert Excel to Pandas DataFrame via CSV.
Nhận Giấy phép Miễn phí
Bạn có thể thử tất cả các tính năng của Aspose.Cells for Python thông qua .NET mà không có giới hạn bằng cách áp dụng một giấy phép tạm thời miễn phí. Vui lòng truy cập trang license page và nhận một giấy phép miễn phí. Điều này cho phép bạn đánh giá toàn bộ API, bao gồm cả chuyển đổi Excel sang DataFrame nâng cao.
Tài nguyên miễn phí bổ sung
Khám phá thêm các cách làm việc với tệp Excel trong Python thông qua các tài nguyên này, sẽ giúp bạn vượt ra ngoài các chuyển đổi cơ bản và áp dụng Aspose.Cells một cách hiệu quả trong các dự án thực tế.
- Tài liệu chính thức của Aspose.Cells
- Tài liệu tham khảo API
- Công cụ Excel trực tuyến miễn phí
- Hướng Dẫn & Tài Liệu Dành Cho Nhà Phát Triển
Kết luận
Chuyển đổi tệp Excel thành các DataFrame của pandas trở nên đơn giản và đáng tin cậy với Aspose.Cells for Python thông qua .NET. Cho dù bạn đang xây dựng bảng tính mới hay nhập những bảng đã tồn tại, thư viện này đảm bảo việc chuyển dữ liệu với độ chính xác cao và hỗ trợ đầy đủ định dạng. Bằng cách kết hợp tính linh hoạt của pandas với khả năng xử lý Excel tiên tiến của Aspose.Cells, bạn có thể đơn giản hóa quá trình xử lý dữ liệu và mở khóa phân tích mạnh mẽ trong Python.
Nếu bạn có bất kỳ câu hỏi nào, hãy truy cập diễn đàn hỗ trợ miễn phí, và đội ngũ của chúng tôi sẽ rất vui được hỗ trợ bạn.
