我正在尝试将具有10个变量和10000个观测值的数据集子集到训练集和测试集中,以便创建逻辑回归模型。我创建训练集的长度和测试集的长度。
data(optiva)
n <- length(optiva$Age)
ntrain <- n*.70
ntest <- n*.30
# Random sample the data set to build the model
train <- optiva[sample(1:n, ntrain, replace=FALSE),]
test <- optiva[-train, ]
创建训练集效果很好,但是当我运行最后一行尝试创建测试集时,我收到一条错误消息:
Error in xj[i] : invalid subscript type 'list'
我尝试将代码更改为
test <- optiva[!train, ]
我得到的测试集超过37,000个观测值,而不是3000个。我已经研究了如何对数据进行子集化并尝试跟进。为什么它对我不起作用?