我尝试交叉验证我的数据以获得一个好的lambda参数。由于权重不同,交叉验证给我一个错误输出。到目前为止,我还没有进行任何设置。
我认为这是y.train
和X.mat.train
中行数的问题,但我查看了它们,发现它们都具有相等的数nrow = 80.000
。
set.seed(1234)
str(X.mat.train)
# num [1:80000, 1:36]
str(y.train)
# num [1:80000]
lambda.seq<- c(2^seq(3,-16,length=99),0)
cv.en <- cv.glmnet(X.mat.train, y.train, intercept=FALSE, standardize=TRUE, alpha=0,5, nfold=10, lambda = lambda.seq)
最后我的输出是:
glmnet(x,y,weights = weights,offset = offset,lambda = lambda:权重(1)中的元素数量不等于 x的行数(80000)
有什么想法吗?