CommencezCommencez gratuitement

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

Voir le cours

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 dataNewsComponents avec les partages en log et les valeurs sur les 6 premières composantes. L'objet pcaNews contient 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(___)$___
Modifier et exécuter le code