1. Cơ bản về lọc dữ liệu trong DataFrame
Lọc có ý nghĩa gì?
Giống như các bộ lọc trong ứng dụng selfie yêu thích của bạn, lọc trong pandas giúp chúng ta tập trung vào những thứ quan trọng nhất. Chúng ta có thể loại bỏ dữ liệu không cần thiết và chỉ giữ lại những gì thực sự có ý nghĩa. Đây là công cụ nền tảng cho phân tích dữ liệu, đặc biệt khi cần chuẩn bị báo cáo hoặc xử lý các tập dữ liệu lớn.
Lần lọc đầu tiên
Hãy bắt đầu với một ví dụ đơn giản. Chúng ta có một DataFrame
với thông tin về doanh số bán hàng:
import pandas as pd
data = {
"Sản phẩm": ["Cam", "Chuối", "Táo", "Cam", "Táo"],
"Số lượng": [10, 5, 8, 7, 6],
"Giá": [3.5, 2.0, 4.0, 3.0, 4.5]
}
df = pd.DataFrame(data)
# Lọc sản phẩm theo tên
filtered_df = df[df["Sản phẩm"] == "Cam"]
print(filtered_df)
Sử dụng điều kiện
Chúng ta có thể kết hợp các điều kiện, như trong bộ lọc đa chức năng! Ví dụ, tìm tất cả các sản phẩm có số lượng bán ra > 6 và giá không quá 3.5:
# Kết hợp điều kiện với & (phép "và" logic)
filtered_df = df[(df["Số lượng"] > 6) & (df["Giá"] <= 3.5)]
print(filtered_df)
Ghi nhớ những điểm quan trọng
Đừng quên rằng trong pandas, chúng ta sử dụng dấu ngoặc vuông để tạo bộ lọc và dấu ngoặc tròn cho các điều kiện. Bạn không muốn trở thành người quên mất những dấu ngoặc đó, đúng không?
2. Sắp xếp dữ liệu
Tại sao sắp xếp quan trọng?
Sắp xếp dữ liệu cho phép chúng ta thấy được cấu trúc và thứ tự trong sự hỗn loạn (nếu như tập dữ liệu có thể hỗn loạn, tất nhiên). Ví dụ, hãy tưởng tượng bạn ở trong thư viện nơi sách bị vứt lung tung — ác mộng! Sắp xếp giúp tổ chức thông tin, dù đó là để phân tích, báo cáo hay chỉ để tìm giá trị cần thiết.
Sắp xếp theo một cột
Hãy sắp xếp DataFrame
của chúng ta theo thứ tự tăng dần của giá sản phẩm:
# Sắp xếp theo thứ tự tăng dần của giá
sorted_df = df.sort_values(by="Giá")
print(sorted_df)
Sắp xếp theo nhiều cột
Hãy tưởng tượng bạn cần sắp xếp dữ liệu trước tiên theo số lượng, và nếu số lượng giống nhau thì theo giá, nhưng theo thứ tự giảm dần. Đây là cách thực hiện:
# Sắp xếp theo số lượng và giá
sorted_df = df.sort_values(by=["Số lượng", "Giá"], ascending=[True, False])
print(sorted_df)
Lưu ý đặc biệt về sắp xếp
Hãy chú ý đến tham số ascending
. Nó cho phép bạn đặt
thứ tự (tăng dần hay giảm dần) cho dữ liệu. Điều này rất tiện lợi nếu bạn
muốn "chỉ huy" dữ liệu của mình một cách táo bạo.
3. Ứng dụng thực tế
Bài tập thực hành
Giờ là lúc áp dụng kiến thức vào thực tế! Giả sử bạn là nhà phân tích tại một công ty bán thiết bị. Nhiệm vụ của bạn là tìm tất cả các mẫu điện thoại bán được trên 100 chiếc và sắp xếp chúng theo lợi nhuận giảm dần.
# Dữ liệu về doanh số điện thoại
data = {
"Mẫu": ["Phone X", "Phone Y", "Phone Z", "Phone X", "Phone Y"],
"Bán ra": [120, 150, 90, 130, 80],
"Lợi nhuận": [200, 180, 220, 210, 190]
}
df = pd.DataFrame(data)
# Lọc các mẫu bán ra trên 100
filtered_df = df[df["Bán ra"] > 100]
# Sắp xếp theo lợi nhuận giảm dần
sorted_df = filtered_df.sort_values(by="Lợi nhuận", ascending=False)
print(sorted_df)
Phân tích và thảo luận
Hãy sử dụng kết hợp lọc và sắp xếp để lấy được dữ liệu thực sự thú vị và quan trọng cho bạn hoặc báo cáo của bạn. Giống như bất kỳ công cụ nào khác, lọc và sắp xếp trở nên mạnh mẽ hơn khi được thực hành. Và đừng quên, dữ liệu được định dạng tốt không chỉ là phước lành cho nhà phân tích, mà còn là niềm tự hào lớn nhất của họ.
Lỗi thường gặp
Một số người mới bắt đầu đôi khi quên sử dụng dấu ngoặc tròn
trong điều kiện lọc, dẫn đến lỗi. Giống như quên đậy nắp nồi —
mọi thứ có thể vượt ngoài tầm kiểm soát. Một lỗi phổ biến khác là
chỉ định sai thứ tự sắp xếp theo nhiều trường. Hãy chắc chắn sử dụng
ascending
đúng cách để không làm mọi thứ lộn xộn.
Ứng dụng thực tế
Trong thực tế, lọc và sắp xếp là công cụ không thể thay thế cho bất kỳ nhà phân tích dữ liệu nào. Chúng giúp nhanh chóng lấy được dữ liệu cần thiết từ các tập phức tạp và chuẩn bị cho báo cáo. Trong thế giới thực, chúng được sử dụng ở khắp nơi: từ fintech đến nghiên cứu y khoa. Ví dụ, các ngân hàng có thể lọc giao dịch để phát hiện hoạt động đáng ngờ, hoặc các nhà nghiên cứu sắp xếp dữ liệu thử nghiệm thuốc để tìm ra các mối quan hệ ẩn giấu. Chưa kể rằng việc biết cách sử dụng những công cụ này có thể là một đồng minh hữu ích trong các buổi phỏng vấn.
4. Tài nguyên bên ngoài để học thêm
Đối với những ai muốn học sâu hơn, tôi khuyên bạn nên tham khảo tài liệu chính thức của pandas, đây là một nguồn tuyệt vời để hiểu rõ mọi khả năng của thư viện này. Ở đó bạn sẽ tìm thấy rất nhiều ví dụ và giải thích giúp bạn nắm vững công cụ này ở mức chuyên nghiệp.
GO TO FULL VERSION