(10分)以第二次作业中所采用的数据集(航班延误 Flightdelayscsv和贷款接收 Universal Bank. csv中任意选择一个)为例,综合采用多种分类监督学习方法,包括,kNN, glmnet,回归分类树,随机森林等,自行设定训练集(估计最优模型)和测试集(评价模型),比较不同方法的分类精度(或误分类错误率并给出不同模型方法对重要特征变量的选取结果。
set.seed(123)
df = read.csv("UniversalBank.csv",stringsAsFactors = TRUE)
# 去除ID
df = df[,-1]
df$CreditCard <- as.factor(df$CreditCard )
# 划分训练集和测试集
train <- sample(nrow(df), 0.9*nrow(df))
df.train <- df[train,]
df.validate <- df[-train,]
# kNN
library(kknn)
knn <- kknn(CreditCard ~ .,df.train,df.validate)
#在测试集上预测
pre_knn <- fitted(knn)
#输出混淆矩阵
library(caret)
confusionMatrix(df.validate$CreditCard, pre_knn)

基于KNN 模型 的 准确率是 0.698
逻辑回归
log <- glm(CreditCard ~ ., data = df.train, family=binomial())
prob <- predict(log, df.validate, ty版权声明:本文为Mrrunsen原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。