2017-04-19 2 views
0

변수 선택을 위해 glmnet lasso 위에 stabsel을 사용하고 싶습니다. https://github.com/hofnerb/stabs에있는 예제를 따라 가면서 제대로 작동합니다.stabsel에서 penalty.factor를 사용하십시오.

그러나 여러 변수를 포함시켜야합니다. 이것은 glmnet에서 'penalty.factor'매개 변수를 사용하여 달성 할 수 있지만 args.fitfun에서이 매개 변수를 전달하면 결과 오류를 나타낼 수 있습니다 (아래 참조).

data("bodyfat", package = "TH.data") 
pfac=c(0,0,0,1,0,1,1,1,1) 
stab.glmnet <- stabsel(x = bodyfat[, -2], y = bodyfat[,2], 
          fitfun = glmnet.lasso, cutoff = 0.75, 
          PFER = 1, args.fitfun=list(penalty.factor = pfac)) 
Error in res[[1]] : subscript out of bounds 
In addition: Warning message: 
In run_stabsel(fitter = fit_model, args.fitter = args.fitfun, n = n,  : 
100 fold(s) encountered an error. Results are based on 0 folds only. 
Original error message(s): 
Error : Matrices must have same number of columns in rbind2(.Call(dense_to_Csparse, x), y) 
Error : Matrices must have same number of columns in rbind2(.Call(dense_to_Csparse, x), y) 
Error : Matrices must have same number of columns in rbind2(.Call(dense_to_Csparse, x), y) 
Error : Matrices must have same number of columns in rbind2(.Call(dense_to_Csparse, x), y) 
Error : Matrices must have same number of columns in rbind2(.Call(dense_to_Csparse, x), y) 
Error : Matrices must have same number of columns in rbind2(.Call(dense_to_Csparse, x), y) 
Error : Matrices must have same number of columns in rbind2(.Call(dense_to_Csparse, x), y) 
Error : Matrices must have same number of columns in rbind2(.Call(dense_to_Csparse, x), y) 
Error : Matrices must have same number of columns in rbind2(.Call(dense_to_Csparse, x), y) 
Error : Matrices must have same number of columns in rbind2(.Call(dense_to_Csparse, x [... truncated] 

모든 도움을 주시면 감사하겠습니다.

답변

관련 문제