项目场景:
在R中使用caret包,划分训练集和测试集时,出现错误Error in createDataPartition(data$OS_STATUS, p = 0.5, list = FALSE): y must have at least 2 data points
问题描述
caret 划分训练集和测试集的代码如下:
library(caret) # 导入包 # 准备数据 data = read.table("msk_8035_survival_data.txt",sep='\t',header = TRUE) set.seed(12345679) # 设置随机种子 index_list <- createDataPartition(y=data$OS_STATUS,p = .5,list = FALSE)
原因分析:
data$OS_STATUS应该是一个向量,不应该是data.frame或者NULL
解决方案:
提示:这里填写该问题的具体解决方案:
检查一下你的y输入的是什么。我的问题是在读数据的时候出现问题,没有添加header=TRUR,导致把第一行列名称也读成数据内容,添加上header=TRUR后,就能正确取出data$OS_STATUS向量了~