xj[i]中出错:下标类型无效';列表';在R
我正在使用糖尿病数据集。我正在尝试拟合从培训集中的上一次任务中获得的“最佳”模型,并报告此模型的测试错误。代码如下xj[i]中出错:下标类型无效';列表';在R,r,R,我正在使用糖尿病数据集。我正在尝试拟合从培训集中的上一次任务中获得的“最佳”模型,并报告此模型的测试错误。代码如下 library(nclSLR) library(leaps) library(glmnet) data(diabetes) set.seed(1) (n = nrow(diabetes)) (p = ncol(diabetes) - 1) train = diabetes [1:350,] test = diabetes [351:442,] grid=10^seq(10,-2
library(nclSLR)
library(leaps)
library(glmnet)
data(diabetes)
set.seed(1)
(n = nrow(diabetes))
(p = ncol(diabetes) - 1)
train = diabetes [1:350,]
test = diabetes [351:442,]
grid=10^seq(10,-2,length=100)
best.subset=c("sex", "bmi", "map", "tc", "ldl", "ltg")
diabetes = diabetes[,best.subset]
#Train lm model
lm.mod=lm(sex~., diabetes[train,])
我在最后一行出错了。它表明
Error in xj[i] : invalid subscript type 'list'.
我已尝试取消列表(),但仍不起作用。问题是我们使用了
I
即行索引作为数据帧。这里,我们需要已经创建的data.frame的子集,即“train”
lm.mod=lm(sex~., train)
train
是一个data.frame
,您使用它作为data.frame
子集的索引。相反,您可能需要diabetes[1:350,]
或只需要train
而不是diabetes[train,]
@akrun train而不是diabetes[train,]工作。谢谢