我使用“rfe”函数和 svm 来创建一个具有减少特征的模型。然后我对测试数据使用“预测”,输出类标签(二进制)、0 类概率、1 类概率。然后,我尝试使用 ROCR 包中的预测函数来预测概率和真实类标签,但出现以下错误,并且不确定为什么,因为两个数组的长度相等:
> pred_svm <- prediction(pred_svm_2class[,2], as.numeric(as.character(y)))
Error in prediction(pred_svm_2class[, 2], as.numeric(as.character(y))) :
Number of predictions in each run must be equal to the number of labels for each run.
Run Code Online (Sandbox Code Playgroud)
我有下面的代码,输入在这里单击我。这是一个具有二进制分类的小数据集,因此代码运行速度很快。
library("caret")
library("ROCR")
sensor6data_2class <- read.csv("/home/sensei/clustering/svm_2labels.csv")
sensor6data_2class <- within(sensor6data_2class, Class <- as.factor(Class))
set.seed("1298356")
inTrain_svm_2class <- createDataPartition(y = sensor6data_2class$Class, p = .75, list = FALSE)
training_svm_2class <- sensor6data_2class[inTrain_svm_2class,]
testing_svm_2class <- sensor6data_2class[-inTrain_svm_2class,]
trainX <- training_svm_2class[,1:20]
y <- training_svm_2class[,21]
ctrl_svm_2class <- rfeControl(functions = rfFuncs , method …Run Code Online (Sandbox Code Playgroud) 从glmnet得到我的预测后,我试图在"ROCR"包中使用"预测"函数来获取tpr,fpr等但是得到这个错误:
pred <- prediction(pred_glmnet_s5_3class, y)
Error in prediction(pred_glmnet_s5_3class, y) :
Format of predictions is invalid.
Run Code Online (Sandbox Code Playgroud)
我输出了glmnet预测和标签,看起来它们的格式相似,因此我不明白这里有什么无效.
代码如下,输入可以在这里输入.它是一个小型数据集,不应该花费太多时间来运行.
library("ROCR")
library("caret")
sensor6data_s5_3class <- read.csv("/home/sensei/clustering /sensor6data_f21_s5_with3Labels.csv")
sensor6data_s5_3class <- within(sensor6data_s5_3class, Class <- as.factor(Class))
sensor6data_s5_3class$Class2 <- relevel(sensor6data_s5_3class$Class,ref="1")
set.seed("4321")
inTrain_s5_3class <- createDataPartition(y = sensor6data_s5_3class$Class, p = .75, list = FALSE)
training_s5_3class <- sensor6data_s5_3class[inTrain_s5_3class,]
testing_s5_3class <- sensor6data_s5_3class[-inTrain_s5_3class,]
y <- testing_s5_3class[,22]
ctrl_s5_3class <- trainControl(method = "repeatedcv", number = 10, repeats = 10 , savePredictions = TRUE)
model_train_glmnet_s5_3class <- train(Class2 ~ ZCR + Energy + SpectralC + …Run Code Online (Sandbox Code Playgroud)