Bygg en stegvis regressionsmodell
När ämneskunskap saknas kan stegvis regression hjälpa dig att identifiera de viktigaste prediktorerna för utfallet.
I den här övningen använder du ett framåt stegvist tillvägagångssätt för att lägga till prediktorer i modellen en i taget tills ingen ytterligare förbättring uppnås. Datamängden donors har lästs in åt dig.
Den här övningen är en del av kursen
Övervakat lärande i R: Klassificering
Övningsinstruktioner
- Använd R:s formelgränssnitt med
glm()för att specificera basmodellen utan prediktorer. Sätt den förklarande variabeln till1. - Använd R:s formelgränssnitt igen med
glm()för att specificera modellen med alla prediktorer. - Tillämpa
step()på dessa modeller för att utföra framåt stegvis regression. Sätt det första argumentet tillnull_modeloch angedirection = "forward". Det här kan ta en stund (upp till 10–15 sekunder) eftersom datorn behöver anpassa ett antal olika modeller för att genomföra det stegvisa urvalet. - Skapa en vektor med förutsagda sannolikheter med funktionen
predict(). - Rita ROC-kurvan med
roc()ochplot(), och beräkna AUC för den stegvisa modellen medauc().
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Specify a null model with no predictors
null_model <- ___(___, data = ___, family = "___")
# Specify the full model using all of the potential predictors
full_model <- ___
# Use a forward stepwise algorithm to build a parsimonious model
step_model <- step(___, scope = list(lower = null_model, upper = full_model), direction = "___")
# Estimate the stepwise donation probability
step_prob <- ___
# Plot the ROC of the stepwise model
library(pROC)
ROC <- ___
plot(___, col = "red")
auc(___)