प्रिंसिपल कंपोनेंट्स के साथ लीनियर रिग्रेशन
ऑब्जेक्ट newsData में अब एक अतिरिक्त वैरिएबल है: logShares. शेयरों की संख्या बताती है कि न्यूज़ आर्टिकल्स कितनी बार शेयर हुए. यह डिस्ट्रीब्यूशन काफ़ी स्क्यूड होगा, इसलिए आप शेयरों की संख्या के लॉगरिदम के साथ काम करेंगे. जो आपने अभी सीखा है उसे लागू करें और log shares की भविष्यवाणी करें!
यह अभ्यास पाठ्यक्रम का हिस्सा है
R में Marketing Analytics के लिए Machine Learning
अभ्यास निर्देश
- बाकी सभी वैरिएबल्स का उपयोग करके log shares को प्रिडिक्ट करने के लिए एक मॉडल बनाएँ. इसे
mod1के रूप में स्टोर करें. - एक नया डेटाफ़्रेम
dataNewsComponentsबनाएँ जिसमें log shares और पहले 6 कंपोनेंट्स पर मौजूद मान हों. ऑब्जेक्टpcaNewsमें फिर से PCA के परिणाम हैं. - दूसरा मॉडल (
mod2) निकालें जो केवल 6 कंपोनेंट्स के साथ log shares को प्रिडिक्ट करे. - मॉडलों के adjusted R squared की तुलना करें. केवल principal components का उपयोग करने पर मान कैसे बदला? आपका मॉडल कितना अच्छा है?
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# 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(___)$___