Tạo một recipe lọc phương sai thấp
Bộ package tidymodels cung cấp cách tốt hơn để lọc các đặc trưng có phương sai bằng 0 và xấp xỉ 0 với các hàm step_zv() và step_nzv() tương ứng. Các bước recipe này xác định đặc trưng phương sai thấp bằng cách xem số lượng giá trị duy nhất và tỷ lệ tần suất của các giá trị phổ biến nhất trong mỗi đặc trưng. Cách tiếp cận này vững vàng hơn so với ngưỡng phương sai đơn giản mà bạn đã dùng trước đó.
Ngoài ra, bạn sẽ dùng bước recipe step_scale() để chuẩn hóa phương sai của các đặc trưng. Hãy nhớ rằng luôn nên chuẩn hóa dữ liệu để phương sai giữa các đặc trưng có thể so sánh được.
house_sales_df đã sẵn sàng để bạn sử dụng. Biến mục tiêu là price. Các package tidyverse và tidymodels cũng đã được nạp sẵn.
Bài tập này là một phần của khóa học
Giảm Chiều Dữ Liệu với R
Hướng dẫn bài tập
- Định nghĩa một recipe cho bộ lọc phương sai thấp và prepare nó với
house_sales_df. - Áp dụng recipe cho
house_sales_dfvà lưu dữ liệu đã lọc vàofiltered_house_sales_df. - Hiển thị các đặc trưng mà recipe đã lọc ở bước
step_nzv().
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.
# Prepare recipe
low_variance_recipe <- recipe(___ ~ ___, ___ = ___) %>%
step_zv(___) %>%
___(___) %>%
___(___) %>%
prep()
# Apply recipe
filtered_house_sales_df <- ___(___, new_data = ___)
# View list of features removed by the near-zero variance step
tidy(___, number = ___)