"Argument Y Missing" 尝试在 R 中实现套索时?
"Argument Y Missing" when trying to implement Lasso in R?
尝试在 R 中执行特征选择。我正在使用 glmnet 包来执行此操作。到目前为止,这是我的代码:
lasso_model = glmnet(as.matrix(x = lasso, y = lasso_target,
standardize=TRUE, alpha=1))
lasso 是一个充满数字和分类预测变量的数据框。第一列是我删除的目标变量。
lasso_target 是我删除的目标变量,存储为它自己的数据框。
错误:
Error in drop(y) : argument "y" is missing, with no default
我的目标是在将数据帧输入模型之前从数据框中删除无信息的特征。任何帮助将不胜感激!
关门了!但是输入变量和响应变量需要单独定义。你所做的是将它们组合成一个矩阵(除了 glmnet 的其他参数)并将整个东西传递给函数。由于 x 默认是第一个参数,它假设是输入矩阵然后找不到负责的变量,因为 y 参数还没有定义。因此,您会收到一条错误提示。
这应该可以解决问题:
lasso_model <- glmnet(x = as.matrix(lasso),
y = as.matrix(lasso_target),
standardize=TRUE,
alpha=1)
尝试在 R 中执行特征选择。我正在使用 glmnet 包来执行此操作。到目前为止,这是我的代码:
lasso_model = glmnet(as.matrix(x = lasso, y = lasso_target,
standardize=TRUE, alpha=1))
lasso 是一个充满数字和分类预测变量的数据框。第一列是我删除的目标变量。
lasso_target 是我删除的目标变量,存储为它自己的数据框。
错误:
Error in drop(y) : argument "y" is missing, with no default
我的目标是在将数据帧输入模型之前从数据框中删除无信息的特征。任何帮助将不胜感激!
关门了!但是输入变量和响应变量需要单独定义。你所做的是将它们组合成一个矩阵(除了 glmnet 的其他参数)并将整个东西传递给函数。由于 x 默认是第一个参数,它假设是输入矩阵然后找不到负责的变量,因为 y 参数还没有定义。因此,您会收到一条错误提示。
这应该可以解决问题:
lasso_model <- glmnet(x = as.matrix(lasso),
y = as.matrix(lasso_target),
standardize=TRUE,
alpha=1)