问题描述
iris_data$Species = as.factor(iris_data$Species)
set.seed(1245)
iris_data_indices <- createDataPartition(y = iris_data$Species,p = 0.8,list = FALSE,times = 1)
test_iris_set <- iris_data[-iris_data_indices,]
training_iris_set <- iris_data[iris_data_indices,]
levels(training_iris_set$Species) <- make.names(levels(factor(training_iris_set$Species)))
levels(test_iris_set$Species) <- make.names(levels(factor(test_iris_set$Species)))
training_control_iris <- trainControl(method = "cv",number = 10,repeats = 5)
metric = "Accuracy"
iris_data_knn <- train(Species~.,data = training_iris_set,method = "knn",preProcess = c("center","scale"),metric = metric,tr_control = training_control_iris)
Something is wrong; all the Accuracy metric values are missing:
Accuracy Kappa
Min. : NA Min. : NA
1st Qu.: NA 1st Qu.: NA
Median : NA Median : NA
Mean :NaN Mean :NaN
3rd Qu.: NA 3rd Qu.: NA
Max. : NA Max. : NA
NA's :3 NA's :3
Error: Stopping
一些警告消息:
Warning messages:
1: predictions Failed for Resample01: k=5 Error in knn3Train(train = structure(c(5.1,4.9,4.7,:
unused argument (tr_control = list("none",25,NA,"grid",0.75,NULL,1,TRUE,FALSE,"final",function (data,lev = NULL,model = NULL)
{
if (is.character(data$obs)) data$obs <- factor(data$obs,levels = lev)
postResample(data[,"pred"],data[,"obs"])
},"best",list(0.95,3,5,19,10,0.9),c(FALSE,FALSE),list(5,0.05,"gls",TRUE),TRUE))
2: predictions Failed for Resample01: k=7 Error in knn3Train(train = structure(c(5.1,TRUE))
为什么我得到这个错误。我还尝试将train()函数中的语法更改为:training_iris_set $ Species,数据= training_iris_set,但仍然返回相同的错误。 当我在train()函数中将方法参数更改为“ lda”时,我没有错误,然后创建了经过训练的另一个knn模型,也没有错误。代码如下:
iris_data_knn <- train(Species~.,method = "lda",tr_control = training_control_iris)
set.seed(1245)
fit.knn <- train(Species~.,trControl = training_control_iris)
有人可以解释一下为什么只有在使用lda之后它才能工作吗?谢谢
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)