Menu
CoddyTech

Lọc dữ liệu

Bài học 9 trên 19 trong khóa học Phân tích dữ liệu với pandas của Coddy.

Pandas cho phép chúng ta lọc các hàng dựa trên một điều kiện cụ thể. Để lọc các hàng, hãy viết điều kiện bên trong dấu ngoặc vuông:

filtered_df = df[df["number_column"] > 5]
filtered_df = df[df["string_column"] == "String Match"]

Để kết hợp nhiều điều kiện, hãy dùng từ khóa & (và) và toán tử | (hoặc). Mỗi điều kiện phải nằm trong dấu ngoặc đơn ():

filtered_df = df[(df['number_column'] >= 3) & (df['string_column'] == 'String Match')]

Từ khóa not là ~ (không lớn hơn 5):

filtered_df = df[~df["number_column"] > 5]

Để lấy tất cả giá trị không trống từ một cột cụ thể:

filtered_df = df[~df["column"].isna()]

Để kiểm tra xem một giá trị có nằm trong một mảng hay không:

filtered_df = df[df['column'].isin(['value1', 'value2', 'value3'])]

 

challenge icon

Thử thách

Dễ

Tệp CSV stats.csv chứa thông tin về các số liệu thống kê.

Đây là 5 dòng đầu tiên của tệp:

ID,COUNTRY,COLOR,SKILL,SKILL_POINTS,UTILIZATION,IS_VALID,CATEGORY
1,France,Signal violet,marksmanship,14,0.1924,1,SHOW
2,Solomon Islands,Pearl violet,crocheting,4,0.6108,1,TREE
3,Germany,Bottle green,calligraphy,12,0.88646,0,SHOW
4,Mauritania,Fawn brown,paper cutting,9,0.058,1,JAPE

Chỉ lấy các hàng đáp ứng những tiêu chí sau:

  • SKILL_POINTS lớn hơn 7.
  • UTILIZATION nhỏ hơn hoặc bằng 0.7 hoặc lớn hơn 0.95.
  • IS_VALID bằng một.
  • CATEGORY là một trong các giá trị sau: JAPE, PLQR và GHUP

Lưu kết quả cuối cùng vào biến df.

Tự làm thử

# pandas đã được nhập với tên pd
df = pd.read_csv("./stats.csv")
# Viết code bên dưới

Tất cả bài học trong Phân tích dữ liệu với pandas

Tự luyện tập: Trình biên dịch Python online