Excel từ lâu đã trở thành công cụ quen thuộc để lưu trữ và phân tích dữ liệu trong doanh nghiệp. Tuy nhiên, khi dữ liệu ngày càng lớn và phức tạp, việc xử lý thủ công trên Excel trở nên hạn chế và tốn thời gian. Python kết hợp với Pandas mang đến một giải pháp mạnh mẽ, cho phép bạn đọc, xử lý và phân tích dữ liệu Excel một cách nhanh chóng và linh hoạt.
Nếu bạn là người mới, hãy tham khảo bài Phân tích dữ liệu bán hàng bằng Python và Pandas để hiểu cách thao tác dữ liệu cơ bản. Bên cạnh đó, bài viết Hướng dẫn tiền xử lý dữ liệu sạch để huấn luyện mô hình tốt hơn sẽ giúp bạn chuẩn bị dữ liệu tối ưu, còn bài Tạo mô hình phát hiện cảm xúc từ văn bản bằng NLP sẽ mở rộng kiến thức về xử lý dữ liệu phi cấu trúc. Những kiến thức này sẽ hỗ trợ bạn rất nhiều khi bắt tay vào làm việc với dữ liệu Excel trong Python.
Giới thiệu về Pandas và openpyxl
Pandas là thư viện mạnh mẽ của Python, chuyên xử lý dữ liệu dạng bảng giống như Excel. Với Pandas, bạn có thể đọc và ghi file Excel, làm sạch dữ liệu, tính toán thống kê và trực quan hóa dễ dàng. Bên cạnh đó, thư viện openpyxl được Pandas sử dụng để đọc và ghi file Excel định dạng .xlsx.
Trong bài viết này, bạn sẽ học cách đọc file Excel vào Python, khám phá dữ liệu, xử lý các vấn đề thường gặp như giá trị thiếu, và thực hiện các phân tích cơ bản.
Chuẩn bị môi trường
Để tránh cài đặt phức tạp, bạn có thể sử dụng Google Colab. Truy cập https://colab.research.google.com và tạo một notebook mới. Với Jupyter Notebook, bạn cần cài các thư viện cần thiết bằng lệnh:
!pip install pandas openpyxl matplotlib seaborn
Tải dữ liệu Excel để thực hành
Để thực hành, chúng ta cần một file Excel. Bạn có thể tải bộ dữ liệu bán hàng mẫu từ Kaggle hoặc tạo một file Excel đơn giản. Dưới đây là cách tạo file Excel giả lập ngay trong Python.
import pandas as pd
# Tạo dữ liệu giả lập
data = {
'Ngày': ['2023-01-05', '2023-01-06', '2023-01-07', '2023-01-08', '2023-01-09'],
'Sản phẩm': ['Áo Thun', 'Quần Jean', 'Áo Khoác', 'Váy', 'Áo Thun'],
'Số lượng': [10, 5, 8, 7, 12],
'Doanh thu': [200000, 500000, 800000, 700000, 240000]
}
df_sample = pd.DataFrame(data)
# Lưu vào file Excel
df_sample.to_excel('sales_data.xlsx', index=False)
print("Đã tạo file sales_data.xlsx để thực hành.")
Đọc file Excel bằng Pandas
Sau khi đã có file Excel, bạn có thể đọc nó vào Python bằng Pandas.
# Đọc file Excel
df = pd.read_excel('sales_data.xlsx')
print(df.head())
Lệnh trên sẽ hiển thị 5 dòng đầu tiên để bạn kiểm tra dữ liệu đã được đọc thành công hay chưa.
Khám phá dữ liệu
Việc hiểu rõ dữ liệu là bước quan trọng trước khi phân tích sâu hơn. Pandas cung cấp nhiều phương thức tiện lợi để khám phá dữ liệu.
# Xem thông tin tổng quan df.info() # Thống kê mô tả cho các cột số df.describe()
Bạn sẽ biết được kiểu dữ liệu của từng cột, số lượng giá trị không null và các thống kê cơ bản như trung bình, độ lệch chuẩn.
Làm sạch dữ liệu
Trong thực tế, dữ liệu Excel thường có giá trị thiếu hoặc lỗi định dạng. Pandas cho phép xử lý những vấn đề này dễ dàng.
# Kiểm tra giá trị thiếu print(df.isnull().sum()) # Thay thế giá trị thiếu trong cột 'Doanh thu' bằng trung bình df['Doanh thu'].fillna(df['Doanh thu'].mean(), inplace=True)
Nếu dữ liệu quá nhiều lỗi, bạn có thể loại bỏ các dòng chứa giá trị thiếu.

