r - R 中的逻辑回归提供 100% 的准确度,但如果我导出结果文件,它会给出不同的结果
问题描述
我正在使用 R 进行逻辑回归,并且我在混淆矩阵中获得了 100% 的准确度,但是当我导出数据时,实际预测值显示不同的结果。有人可以帮忙吗?
###代码 set.seed(123)
gi.train_ind <-
sample(1:nrow(gifraud),size=floor(0.80*nrow(gifraud)))
gi.train <- gifraud[gi.train_ind,]
gi.test <- gifraud[-gi.train_ind,]
logreg <- glm(fraud_reported~CurrentReferralStatus
+IsReportedToPolice+HasPreviousClaims+
EstimatedInitialClaimCost+HasComplaint+IsPolicyholderVerified,
data=gi.train, family =binomial)
summary (logreg)
gi.train$probscore <- predict(logreg,data=gi.train, type ="response")
gi.train$prediction <- as.factor (ifelse(gi.train$probscore <0.5, 0,1))
gi.test$probscore <- predict(logreg,gi.test, type ="response")
gi.test$prediction <- as.factor (ifelse(gi.test$probscore <0.5, 0,1))
install.packages('caret')
install.packages('e1071', dependencies=TRUE)
library(caret)
confusionMatrix(gi.train$fraud_reported, gi.train$fraud_reported)
confusionMatrix(gi.test$fraud_reported, gi.test$fraud_reported)
prop.table(table(gi.test$fraud_reported,gi.test$probscore>0.5))
prop.table(table(gi.train$fraud_reported,gi.test$probscore>0.5))
write.csv(gi.train, file ="GItrainresults.csv")
write.csv(gi.test, file ="GItestresults.csv")
导出的文件显示正确结果约为 87%,但混淆矩阵显示为 100%
解决方案
混淆矩阵用于解释预测和实际目标变量之间的模型结果。你基本上是在实际目标变量之间做混淆矩阵
推荐阅读
- javascript - 无法使用 javascript 获取 iframe 内容
- python - 线性回归:线拟合,但成本似乎增加
- php - 如何使用 php 在 WordPress 插件中回显 json 数据
- vue.js - 如何将芯片组中的选定芯片绑定到数据变量
- python - 在 cmd 中编写 python3 --version 时没有任何反应
- php - PHP在声明函数之前声明和分配变量(与函数名同名)
- python - 在 Visual Studio Code 中运行 python 脚本时出错
- asp.net-core - ASP Core ADB2C 应用程序中缺少 OID 声明
- c# - 当用户选择页面时,更改 _Layout.cshtml 中导航栏列表项文本的颜色
- amazon-web-services - AWS EC2 阻止来自外部请求的 Tomcat Web 应用程序