R中的偏最小二乘分类

时间:2013-11-22 00:53:31

标签: r machine-learning

我正在尝试使用caret包执行偏最小二乘法进行分类。

我的数据集可以找到here。但是我得到一个错误,我无法弄清楚如何纠正。

我使用的代码和收到的错误:

ctrl <- trainControl(method = "cv",number=2, repeats = 2)

plsFit <- train(plant ~ .,  data = rf.spec.train,
method = "pls", tuneGrid = data.frame(.ncomp = c(1:10)),   trControl = ctrl))

错误:

Error in data.frame(method = "cv", number = 1, repeats = 2, p = 0.75,  : 
arguments imply differing number of rows: 1, 0, 2

当我使用tuneLength = xx代替tuneGrid时,我不会收到错误。关于我做错了什么的建议?

1 个答案:

答案 0 :(得分:1)

我检查了插入符号包here的列车功能的文档。

如果你看一下tunegrid参数的描述,它会说:

  

注意:如果给定,则必须命名此参数。

您输入tunegrid参数的方式,它未命名。所以我建议创建另一个变量并将值赋给此变量,然后将其传递给函数。