ПочатиПочніть безкоштовно

Лінійна регресія з головними компонентами

Об'єкт newsData тепер містить додаткову змінну: logShares. Кількість поширень показує, як часто новинні статті ділилися. Однак цей розподіл буде значно зміщеним, тож ви працюватимете з логарифмом кількості поширень. Застосуйте щойно вивчене та спрогнозуйте логарифм поширень!

Ця вправа є частиною курсу

Machine Learning для маркетингової аналітики в R

Переглянути курс

Інструкції до вправи

  • Обчисліть модель для прогнозування логарифма поширень за всіма іншими змінними. Збережіть її як mod1.
  • Створіть новий датафрейм dataNewsComponents із логарифмом поширень і значеннями на перших 6 компонентах. Об'єкт pcaNews знову містить результати PCA.
  • Обчисліть другу модель (mod2), яка прогнозує логарифм поширень лише за 6 компонентами.
  • Порівняйте скоригований R-квадрат моделей. Як змінилося значення, якщо використовувати тільки головні компоненти? Наскільки добра ваша модель?

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# 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(___)$___
Редагувати та запускати код