在尝试使用cv.glmnet
对我的数据执行交叉验证时出现错误
Error in apply(nz, 1, median) : dim(X) must have a positive length
在下面的行中,y
是一个 3 级变量(我as.factor()
在原始变量上使用)。预测器x
由一个连续变量(mage)和一些因子变量(再次用于as.factor()
分类变量)组成。正如另一篇在线帖子所建议的那样,我收集所有预测变量的代码是:
xfactors <- model.matrix(ANYHEART ~ mrace+frace+sex+smoke+alcohol+bmi+dbt+ben+tol+
xyl+car+chl+met+per+tca+tce+sto+chlor+arom)[,-1]
x <- as.matrix(data.frame(mage, xfactors))
y <- as.factor(ANYHEART)
fit = glmnet(x, y, family="multinomial", type.multinomial="grouped")
然后使用以下方法进行交叉验证:
cvfit <- cv.glmnet(x, y, family="multinomial", type.multinomial="grouped")
我想知道是否有人以前遇到过这个问题,可能的原因是什么。