Ingénierie des caractéristiques en R
Jorge Zazueta
Research Professor and Head of the Modeling Group at the School of Economics, UASLP
Certains ensembles de données contiennent des colonnes constantes ou à variance nulle. On peut filtrer ces variables avec step_zv() dans notre recipe().

Les variables à quasi variance nulle comprennent les prédicteurs à valeur unique et ceux présentant les deux caractéristiques suivantes :
Très peu de valeurs uniques par rapport au nombre d'échantillons
Rapport élevé entre la fréquence de la valeur la plus courante et celle de la deuxième plus courante
Exemple de quasi variance nulle :
step_nzv() repère et retire les prédicteurs présentant ces caractéristiques.
Ensemble de données d'origine en trois dimensions avec deux classes associées.

Ensemble réduit représentant les données par les deux premières composantes principales.

Créer une recette pour exécuter l'ACP et récupérer sa sortie avec prep().
pc_recipe <-
recipe(~., data = loans_num) %>%
step_nzv(all_numeric()) %>%
step_normalize(all_numeric()) %>%
step_pca(all_numeric())
pca_output <- prep(pc_recipe)
On peut consulter l'information disponible en appelant names() sur pca_output.
names(pca_output)
[1] "var_info" "term_info"
[3] "steps" "template"
[5] "levels" "retained"
[7] "requirements" "tr_info"
[9] "orig_lvls" "last_term_info"
Extraire l'écart-type de l'objet pca_output et calculer la variance expliquée.
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))
Un tableau montrant la variance expliquée par composante principale.
# 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
On peut tracer la sortie sous forme d'histogramme avec ggplot2.
PCA %>%
ggplot(aes(x = PC,
y = var_explained)) +
geom_col(fill = "steelblue") +
xlab("Principal components") +
ylab("Variance explained")
Variance expliquée par composante principale.

Ingénierie des caractéristiques en R