Varyansa göre seçim

R'de Boyutsal Azaltma

Matt Pickard

Owner, Pickard Predictives, LLC

Ölçeklenmemiş verinin varyansı

ölçeklenmemiş kredi verileri için standart sapma çubuklarıyla ortalama grafiği

R'de Boyutsal Azaltma

Ölçeklenmiş verinin varyansı

ölçeklenmiş kredi verileri için standart sapma çubuklarıyla ortalama grafiği

R'de Boyutsal Azaltma

Ölçeklenmiş varyansları hesaplama

credit_variances <- credit_df %>% 
  summarize(across(everything(), ~ var(scale(., center = FALSE)), na.rm = TRUE)) %>%

pivot_longer(everything(), names_to = "feature", values_to = "variance") %>%
arrange(desc(variance)) credit_variances
# A tibble: 17 × 2
   feature                  variance
   <chr>                       <dbl>
 1 num_of_loan               0.996  
 2 num_of_delayed_payment    0.986   
 ...
R'de Boyutsal Azaltma

Varyans eşiği

varyans çıktısı

R'de Boyutsal Azaltma

Varyans eşiği

olası ilk eşik noktasını gösteren varyans çıktısı

R'de Boyutsal Azaltma

Varyans eşiği

olası ilk eşik noktasını gösteren varyans çıktısı

R'de Boyutsal Azaltma

Varyans eşiği

olası ilk eşik noktasını gösteren varyans çıktısı

R'de Boyutsal Azaltma

Varyans eşiği grafiği

Varyans eşiği grafiği

R'de Boyutsal Azaltma

Varyans filtresi oluşturma

low_var_filter <- credit_variances %>% 
  filter(variance < 0.1) %>% 
  pull(feature)

low_var_filter
[1] "credit_history_months"    "age"                     
[3] "num_credit_inquiries"     "credit_utilization_ratio"
[5] "num_credit_card"   
R'de Boyutsal Azaltma

tidymodels yaklaşımı

Tarifeyi oluşturun

low_variance_recipe <- recipe(credit_score ~ ., data = credit_df) %>%

step_zv(all_predictors()) %>%
step_scale(all_numeric_predictors()) %>%
step_nzv(all_predictors()) %>%
prep()

Tarifenizi uygulayın

filtered_credit_df <- bake(low_variance_recipe, new_data = NULL)
R'de Boyutsal Azaltma

Belirli bir adımın etkisini inceleme

low_variance_recipe <- recipe(credit_score ~ ., data = credit_df) %>% 
  step_zv(all_predictors()) %>% 
  step_scale(all_numeric_predictors()) %>% 
  step_nzv(all_predictors()) %>% 
  prep() 

tidy(low_variance_recipe, number = 3)
  terms                id       
  <chr>                <chr>    
1 num_credit_card      nzv_ni8L7
2 num_credit_inquiries nzv_ni8L7
R'de Boyutsal Azaltma

Ayo berlatih!

R'de Boyutsal Azaltma

Preparing Video For Download...