首页 > 解决方案 > 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%

标签: r

解决方案


混淆矩阵用于解释预测和实际目标变量之间的模型结果。你基本上是在实际目标变量之间做混淆矩阵


推荐阅读