Xử lý giá trị thiếu (I)

Feature Engineering cho Machine Learning bằng Python

Robert O'Callaghan

Director of Data Science, Ordergroove

Xóa hàng toàn bộ (listwise)

      SurveyDate      ConvertedSalary     Hobby ... \
0  2/28/18 20:20                  NaN       Yes ...
1  6/28/18 13:26              70841.0       Yes ...
2    6/6/18 3:37                  NaN        No ...
3    5/9/18 1:06              21426.0       Yes ...
4  4/12/18 22:41              41671.0       Yes ...
Feature Engineering cho Machine Learning bằng Python

Xóa hàng toàn bộ trong Python

# Xóa mọi hàng có ít nhất một giá trị thiếu
df.dropna(how='any')
Feature Engineering cho Machine Learning bằng Python

Xóa hàng toàn bộ trong Python

# Xóa các hàng thiếu giá trị ở một cột cụ thể
df.dropna(subset=['VersionControl'])
Feature Engineering cho Machine Learning bằng Python

Vấn đề khi xóa

  • Xóa cả dữ liệu hợp lệ
  • Phụ thuộc vào tính ngẫu nhiên
  • Giảm thông tin
Feature Engineering cho Machine Learning bằng Python

Thay thế bằng chuỗi

# Thay giá trị thiếu trong một cột cụ thể
# bằng một chuỗi cho trước
df['VersionControl'].fillna(
    value='None Given', inplace=True
)
Feature Engineering cho Machine Learning bằng Python

Ghi nhận giá trị thiếu

# Ghi nhận nơi các giá trị không bị thiếu
df['SalaryGiven'] = df['ConvertedSalary'].notnull()
# Xóa một cột cụ thể
df.drop(columns=['ConvertedSalary'])
Feature Engineering cho Machine Learning bằng Python

Thực hành

Feature Engineering cho Machine Learning bằng Python

Preparing Video For Download...