问题描述
我第一次尝试使用 ropls 包来执行 PLS-DA 和 OPLS-DA 预测模型,正如我在其文档中看到的那样,该算法提供了选项 subset="odd",它将数据分成两个相等的大小,所以 50%-50%。问题是我需要将我的数据分成 80% 的训练和 20% 的测试,正如我所读到的,它说你可以使用所需子集的索引,但我没能做到。我试过手动执行拆分,然后提取索引并在算法中使用该子集,但由于我对编程非常陌生,恐怕我做得不对......它总是告诉我:错误:“子集”必须设置为“奇数”或“x”行号的整数向量
有人可以帮我吗?非常感谢!!
到目前为止我尝试过的代码看起来像这样(抱歉,如果它是一团糟!):
set.seed(12345)
n_train<-0.8
n<-nrow(cancerx)
train<-sample(n,floor(n*n_train))
trainrf<-cancerx[train,]
testrf<-cancerx[-train,]
#PLS-DA predict
plsda1<-opls(cancerx[-1],cancerx$label,predI=1,subset="train")
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)