Régression linéaire avec des composantes principales
L'objet newsData contient maintenant une variable supplémentaire : logShares. Le nombre de partages indique combien de fois les articles de nouvelles ont été partagés. Or, cette distribution serait très asymétrique, donc vous allez travailler avec le logarithme du nombre de partages. Appliquez ce que vous venez d'apprendre et prédisez les partages en log !
Cette activité fait partie du cours
Machine Learning for Marketing Analytics in R
Instructions de l’exercice
- Calculez un modèle pour prédire les partages en log avec toutes les autres variables. Enregistrez-le sous
mod1. - Créez un nouveau tableau de données
dataNewsComponentsavec les partages en log et les valeurs sur les 6 premières composantes. L'objetpcaNewscontient de nouveau les résultats de l'ACP. - Calculez un deuxième modèle (
mod2) qui prédit les partages en log uniquement avec les 6 composantes. - Comparez le R carré ajusté des deux modèles. Comment la valeur change-t‑elle en utilisant seulement les composantes principales ? Votre modèle est-il performant ?
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Predict log shares with all original variables
mod1 <- lm(logShares ~ ., data = ___)
# Create dataframe with log shares and first 6 components
dataNewsComponents <- cbind(logShares = newsData[, "logShares"],
___$x[, 1:__]) %>%
as.data.frame()
# Predict log shares with first six components
mod2 <- lm(___ ~ ., data = ___)
# Print adjusted R squared for both models
___(mod1)$adj.r.squared
summary(___)$___