gpt4 book ai didi

R 中的 ROC 曲线与决策树的 rpart

转载 作者:行者123 更新时间:2023-12-05 05:02:05 26 4
gpt4 key购买 nike

我在为 rpart 包创建的决策树创建 ROC 曲线时遇到问题。我的目标是预测“y”银行营销事件的成功。最后,您可以获得"is"或“否”作为可能的答案。我如何处理 ROC 曲线图的下一步?

这是我目前的 R 代码:

library(caTools) 
library(rpart)
library(rpart.plot)

set.seed(1234)
sample = sample.split(bank$y, SplitRatio = .75)
train = subset(bank, sample==TRUE)
test = subset(bank, sample==FALSE)

tree <-rpart(y ~.,method="class",data=train)
tree.preds<-predict(tree, test)
tree.preds<-as.data.frame(tree.preds)
joiner <- function(x) {if (x >= 0.5) {return("Yes") } else {return("No")}}
tree.preds$y <- sapply(tree.preds$yes, joiner)
table(tree.preds$y, test$y)
prp(tree)

最佳答案

首先对于 ROC 分析,您需要获得数字预测,例如概率:

predict(tree, test, type="prob")

如果您的变量的答案是"is"和“否”,您将得到两列,并分别标记。我假设"is"是第二个,并将其保存为预测:

tree.preds <- predict(tree, test, type="prob")[, 2]

然后您可以将它直接插入到 ROC 函数中,例如 pROC 提供的函数:

library(pROC)
tree.roc <- roc(test$y, tree.preds)
print(tree.roc)
plot(tree.roc)

关于R 中的 ROC 曲线与决策树的 rpart,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62395760/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com