Regressão linear com componentes principais
O objeto newsData agora contém uma variável adicional: logShares. O número de compartilhamentos indica quantas vezes os artigos foram compartilhados. No entanto, essa distribuição seria altamente assimétrica, então você vai trabalhar com o logaritmo do número de compartilhamentos. Aplique o que você acabou de aprender e preveja o log de compartilhamentos!
Este exercício faz parte do curso
Machine Learning for Marketing Analytics in R
Instruções do exercício
- Calcule um modelo para prever o log de compartilhamentos com todas as outras variáveis. Armazene-o como
mod1. - Crie um novo dataframe
dataNewsComponentscom o log de compartilhamentos e os valores nos 6 primeiros componentes. O objetopcaNewsnovamente contém os resultados do PCA. - Calcule um segundo modelo (
mod2) que prevê o log de compartilhamentos usando apenas os 6 componentes. - Compare o R quadrado ajustado dos modelos. Como o valor mudou ao usar apenas os componentes principais? Quão bom está o seu modelo?
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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(___)$___