Error in cut.default(Number, breaks = c(60, 80, 90, 100), labels = labels): number of intervals and

Error in cut.default(Number, breaks = c(60, 80, 90, 100), labels = labels): number of intervals and length of ‘labels’ differ
Traceback:

这是我编R语言,使用cut函数遇到的错误,原因是labels定义了4个,而breaks的vector只有三个区间分别是60-80,80-90,90-100这三个区间,所以出错了,原本代码和运行结果如下图:
在这里插入图片描述
修改后如下图:
在这里插入图片描述
希望对你有所帮助,加油!My dear friends.

``` install.packages("pacman") pacman::p_load(randomForest,caret,pROC) install.packages("randomForest") library(randomForest) install.packages("caret") library(caret) install.packages("pROC") library(pROC) install.packages("lava") library(lava) #lasso回归筛选数据集随机森林 completed_copd <- read.csv("C:\\Users\\29930\\Desktop\\COPD2.csv") completed_copd$COPD <- as.factor(completed_copd$COPD) library(caret) set.seed(40705) trainlist <- createDataPartition(completed_copd$COPD,p=0.7,list = FALSE) trainset <- completed_copd[trainlist,] testset <- completed_copd[-trainlist,] library(randomForest) set.seed(40705) rf.train <- randomForest(as.factor(COPD) ~.,data = trainset,importance = TRUE) rf.train # 10折交叉验证 library(pROC) library(MLmetrics) cv <- trainControl(method = "cv", number = 10, classProbs = TRUE, summaryFunction = twoClassSummary) results <- train(COPD ~ ., data = trainset, method = "rf", trControl = cv) # 输出交叉验证结果 results plot(rf.train, main = "图1 lasso筛选变量数据集的随机森林与误差关系图") predictions <- predict(rf.train,testset,type = "class") predictions confMatrix <- table(testset$COPD, predictions) acc <- sum(predictions ==testset$COPD)/nrow(testset) print(paste("Accuracy",acc)) set.seed(40705) rf.test <- predict(rf.train, newdata = testset, type = "class") rf.cf <- caret::confusionMatrix(as.factor(rf.test),as.factor(testset$COPD)) rf.test2 <- predict(rf.train, newdata = testset, type = "prob") head(rf.test2) library(pROC) ROC.rf <- multiclass.roc(testset$COPD,rf.test2,plot = TRUE, print.auc = TRUE, legacy.axes = TRUE) head(ROC.rf) #计算权值 varImpPlot(rf.train) importance <- importance(rf.train) imp_df <- data.frame(feature=row.names(importance), importance=importance[,1]) imp_df$weight <- imp_df$importance/sum(imp_df$importance) imp_df$score <- imp_df$weight*100 print(imp_df)```增加一个评分系统以预测COPD,并增加可视化和输出公式
最新发布
03-30
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值