Bắt đầu ngayBắt đầu miễn phí

Mã hóa cột phân loại III: DictVectorizer

Rồi, một mẹo cuối cùng trước khi bạn bắt tay vào pipelines. Quy trình hai bước bạn vừa làm - LabelEncoder rồi đến OneHotEncoder - có thể được đơn giản hóa bằng cách dùng DictVectorizer.

Dùng DictVectorizer trên một DataFrame đã được chuyển thành dictionary cho phép bạn thực hiện cả label encoding và one-hot encoding chỉ trong một lần.

Nhiệm vụ của bạn là áp dụng chiến lược này trong bài tập này!

Bài tập này là một phần của khóa học

Gradient Boosting Cực Mạnh với XGBoost

Xem khóa học

Hướng dẫn bài tập

  • Import DictVectorizer từ sklearn.feature_extraction.
  • Chuyển df thành một dictionary tên df_dict bằng phương thức .to_dict() với đối số "records".
  • Khởi tạo một đối tượng DictVectorizer tên dv với tham số sparse=False.
  • Áp dụng DictVectorizer lên df_dict bằng phương thức .fit_transform().
  • Nhấn 'Gửi câu trả lời' để in ra 5 hàng đầu tiên thu được và vocabulary.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Import DictVectorizer
____

# Convert df into a dictionary: df_dict
df_dict = ____

# Create the DictVectorizer object: dv
dv = ____

# Apply dv on df: df_encoded
df_encoded = ____

# Print the resulting first five rows
print(df_encoded[:5,:])

# Print the vocabulary
print(dv.vocabulary_)
Chỉnh sửa và Chạy Mã