使用rpart创建简单的决策树后,我想使用ROCR绘制性能。当我更改avg =参数时,ROC的曲线发生了显着变化。
当我使用相同的方法并更改GLM模型的性能绘制时,没有任何变化。为什么此参数仅影响树图以及以哪种方式起作用。
# create tree model
bsprp <- mean(df.sub.train$y)
target <- y_fact ~ age + gender + a + b + c + d
m.dt <- rpart(target,
data = df.sub.train,
parms=list(prior=c(bsprp,1-bsprp)), cp=0.005)
# predict on df.sub.vld
dt.predicted <- predict(m.dt, newdata = df.sub.vld)
dt.pred <- prediction(dt.predicted[,2],df.sub.vld$y)
dt.perf <- performance(dt.pred, "tpr", "fpr")
# plot performance
plot(dt.perf, avg= "threshold", col="red", lwd= 2, main= "ROC curve")
abline(0, 1, untf = FALSE, col = "lightgray", lty = 2)
# vs
plot(dt.perf, avg= "none", col="red", lwd= 2, main= "ROC curve")
abline(0, 1, untf = FALSE, col = "lightgray", lty = 2)
使用的数据集示例:
y_fact y age gender bf2 a b c
5 1 1 71.11233 Male 40 6 0 0
10 1 1 51.83836 Male 11 5 3 0
13 1 1 70.14521 Female 7 3 1 0
15 1 1 40.00548 Male 64 6 0 0
16 1 1 55.81096 Male 55 8 1 0
19 1 1 54.45479 Male 13 3 1 0
不同情节的屏幕截图: