在训练glmnet回归时,我遇到了一个奇怪的错误。
invalid class "dgCMatrix" object: length(Dimnames[[2]])' must match Dim[2]
它只是偶尔发生,也许只在较大的数据集下发生。
我不确定在给定某个数据集的情况下它是否一致。
任何线索?
答案 0 :(得分:2)
在不知道这些软件包的细节的情况下,John Chambers“Software for Data Analsys”(2008,Springer)对调试进行了很好的讨论,例如通过
> options(error=recover)
这可能会有所帮助。
答案 1 :(得分:1)
我在使用family ='binomial'时遇到了同样的错误。事实证明,我的响应变量中的事件/案例太少了。在cv.glmnet中使用nfold = 10,如果我的二进制响应[0,1]发生的时间少于〜2%,我会得到错误。我建议您使用脚本检查此方案,并在true时使用glmnet。尽管选择lambda,你将无法获得x验证的好处。
答案 2 :(得分:0)
需要澄清以上内容。使用cv.glmnet()时遇到了这个问题。通过识别那些案例太少的实例,我使用glmnet()代替。你失去了交叉验证的好处(即估计lambda),但它会失败。