R 在cv.glmnet()中运行用于多项式分类的大型矩阵
我正在研究一个大型矩阵,样本数N=40,特征数p=7130。我正在尝试将R 在cv.glmnet()中运行用于多项式分类的大型矩阵,r,sparse-matrix,logistic-regression,glmnet,multinomial,R,Sparse Matrix,Logistic Regression,Glmnet,Multinomial,我正在研究一个大型矩阵,样本数N=40,特征数p=7130。我正在尝试将cv.glmnet()用于山脊,但在执行此操作时出错。 数据集的维度为(407130) cv.glmnet()的代码如下所示: ridge2_cv <- cv.glmnet(x, y, ## type.measure: loss to use for cross-validation. type.measure = "deviance",
cv.glmnet()
用于山脊,但在执行此操作时出错。数据集的维度为(407130)
cv.glmnet()的代码如下所示:
ridge2_cv <- cv.glmnet(x, y,
## type.measure: loss to use for cross-validation.
type.measure = "deviance",
## K = 10 is the default.
nfold = 10,
## Multinomial regression
family = "multinomial",
## ‘alpha = 1’ is the lasso penalty, and ‘alpha = 0’ the ridge penalty.
alpha = 0)
ridge2\u cv能否尝试将data.matrix()用作矩阵而不是as.matrix?我记得我试过类似的东西
ridge2_cv <- cv.glmnet(data.matrix(x), y,
## type.measure: loss to use for cross-validation.
type.measure = "deviance",
## K = 10 is the default.
nfold = 10,
## Multinomial regression
family = "multinomial",
## ‘alpha = 1’ is the lasso penalty, and ‘alpha = 0’ the ridge penalty.
alpha = 0)
ridge2\u简历你能编辑你的问题,让我们看看str(x)
和str(y)
(也许还有table(y)
)?@BenBolker我在检查typeof(x)
和typeof(y)
时发现了这个问题。数据帧被读取为字符,我必须使用read.table
并根据我的问题进行更改。这就解决了问题。谢谢你的建议。它给了我解决问题的想法是的,你的答案在某些情况下是正确的,但我的问题是兼容性。当我转换矩阵时,数据被读取为字符。我把它改成了双倍的,它成功了。谢谢你的建议