【发布时间】:2017-05-03 00:07:57
【问题描述】:
我对 R 中的 glmnet 包有疑问。我正在尝试使用它,但遇到以下问题:
{
> names(mtcars)
#lasso
## 75% of the sample size
> smp_size <- floor(0.75 * nrow(mtcars))
## set the seed to make your partition reproductible
> set.seed(123)
> train_ind <- sample(seq_len(nrow(mtcars)), size = smp_size)
> train <- mtcars[train_ind, ]
> names(train)
> y<-train["hp"]
> c(y)
> yvector<-c(y)
> is.vector(yvector)
> grid=10^seq(10,-2,length=24)
> lasso.mod=glmnet(train,yvector, alpha=1, lambda=grid)
glmnet (train, yvector, alpha = 1, lambda = grid) 中的错误:数字 y (1) 中的观察值不等于 x (24) 的行数
> lasso.mod=glmnet(train,y, alpha=1, lambda=grid)
weighted.mean.default(y, weights) 中的错误:'x' 和 'w' 必须有 一样长
> lasso.mod=glmnet(train,train, alpha=1, lambda=grid)
weighted.mean.default(y, weights) 中的错误:'x' 和 'w' 必须有 长度一样 }
每次我将最后一行(glmnet程序)更改为y(输入相同长度的矩阵或向量)时,都会重复最后三个错误!!!我该怎么办?
【问题讨论】: