library(tidyverse) library(caret) dropout_clean <- read.csv("C:/Users/Mark/Desktop/Grad School/PDAT630/dropout_clean.csv") factor_cols=c("Marital.status","Scholarship.holder","Tuition.fees.up.to.date","Gender","Displaced","Daytime.evening.attendance","Course","Previous.qualification","Mother.s.qualification","Father.s.qualification","Mother.s.occupation","Father.s.occupation","International","Target") dropout_clean[factor_cols] <- lapply(dropout_clean[factor_cols], factor) dropout_clean_lg=mutate(dropout_clean, Target = as.factor(ifelse(Target == "Dropout", 0, 1))) str(dropout_clean_lg) df.train <- sample_frac(dropout_clean_lg, size = .85) df.test <- setdiff(dropout_clean_lg, df.train) ## Logistic Regression logreg = glm(Target~., family = "binomial", data = df.train) coef(logreg) summary(logreg) pred=predict(logreg, df.test, type="response") pred=as.factor(ifelse(pred>.5, 1, 0)) confusionMatrix(as.factor(df.test$Target), pred)$overall[1] ## Stepwise logreg.step=step(logreg) coef(logreg.step) summary(logreg.step) pred.step=predict(logreg.step, df.test, type="response") pred.step=as.factor(ifelse(pred.step>.5, 1, 0)) confusionMatrix(as.factor(df.test$Target), pred.step)$overall[1]