R'da Feature Engineering
Jorge Zazueta
Research Professor and Head of the Modeling Group at the School of Economics, UASLP
Bazı veri kümelerinde sabit değerli veya sıfır varyanslı sütunlar vardır. Bu özellikleri recipe() içine step_zv() ekleyerek filtreleyebiliriz.

Sıfıra yakın varyanslı özellikler, tek değere sahip yordayıcıları ve aşağıdaki iki özelliği birden taşıyan yordayıcıları içerir:
Örnek sayısına göre çok az benzersiz değer
En yaygın değerin frekansının, ikinci en yaygın değerin frekansına oranı büyüktür
Sıfıra yakın varyansa örnek:
step_nzv() bu özelliklere sahip yordayıcıları belirler ve kaldırır.
İki sınıfa ait üç boyutlu özgün veri kümesi.

İlk iki temel bileşeni kullanarak indirgenmiş veri kümesi.

PCA uygulamak için bir recipe oluşturma ve çıktıyı prep() ile alma.
pc_recipe <-
recipe(~., data = loans_num) %>%
step_nzv(all_numeric()) %>%
step_normalize(all_numeric()) %>%
step_pca(all_numeric())
pca_output <- prep(pc_recipe)
pca_output üzerinde names() çağırarak mevcut bilgileri görebiliriz.
names(pca_output)
[1] "var_info" "term_info"
[3] "steps" "template"
[5] "levels" "retained"
[7] "requirements" "tr_info"
[9] "orig_lvls" "last_term_info"
pca_output nesnesinden standart sapmayı çıkarın ve açıklanan varyansı hesaplayın.
stdv <- pca_output$steps[[3]]$res$sdev
var_explained <- stdv^2/sum(stdv^2)
PCA = tibble(PC = 1:length(stdv),
var_explained = var_explained,
cumulative = cumsum(var_explained))
Temel bileşenlere göre açıklanan varyansı gösteren bir tablo.
# A tibble: 5 × 3
PC var_explained cumulative
<int> <dbl> <dbl>
1 1 0.315 0.315
2 2 0.214 0.529
3 3 0.202 0.730
4 4 0.198 0.928
5 5 0.0722 1
Çıktıyı ggplot2 ile sütun grafiği olarak çizebiliriz.
PCA %>%
ggplot(aes(x = PC,
y = var_explained)) +
geom_col(fill = "steelblue") +
xlab("Principal components") +
ylab("Variance explained")
Temel bileşenlere göre açıklanan varyans.

R'da Feature Engineering