GLM之后的套索

时间:2014-12-29 11:09:43

标签: r regression lasso

做了一些逻辑回归后我试图做Lasso回归但是在键入各种命令时我一直得到对象未找到错误这是我的代码到目前为止

data <- read.csv("ahw.csv", 
+                  colClasses = c("factor",
+                                 rep("numeric", 15)))

哪个给了我

 $ PlacedN: Factor w/ 2 levels "0","1": 1 1 1 1 1 2 1 1 1 1 ...
 $ TrA    : num  9 13 11 9 -1 13 10 10 10 6 ...
  $ JoA    : num  0 2 0 10 6 15 8 9 9 6 ...
  $ aPr    : num  0 0 0 0 0 0 0 0 0 0 ...
  $ bPr    : num  0 1 0 0 1 0 0 0 0 0 ...
 $ mPr    : num  0 0 0 0 1 0 0 0 0 0 ...
 $ Vdw    : num  0 0 0 0 0 0 0 0 0 0 ...
 $ ALL    : num  32 46 15 16 48 50 32 9 28 4 ...
 $ COD    : num  -1 80 0 25 -1 50 47 -1 -1 -1 ...
 $ DIS.   : num  32 46 23 15 48 50 32 9 28 0 ...
 $ cIM    : num  -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 ...
 $ cFE    : num  -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 ...
  $ LAT    : num  38 38 9 20 61 58 37 12 25 5 ...
  $ CLA    : num  40 50 9 25 -1 75 61 -1 -1 -1 ...
  $ CLC    : num  -1 -1 0 25 -1 75 61 -1 -1 -1 ...
  $ LAC    : num  38 50 9 25 -1 60 61 -1 -1 -1 ...

显然我可以使用

调用Logistic公式
est <- glm(PlacedN ~ ., data=data, family="binomial")
summary(est)

基本上我的下一步是做什么LASSO(带logit),还得到系数和之后的任何漂亮的图表

有一些套餐让我这样的初学者感到困惑

先谢谢

迈克尔

1 个答案:

答案 0 :(得分:2)

glmnet包应该有用。作者有一个很棒的tutorial。但是,这是使用您的代码的快速入门。

require(glmnet)
est <- glmnet(as.matrix(data[,2:16]), data$PlacedN , family="binomial")
summary(est)
plot(est)
last <- dim(coef(est))[2]
coef(est)[last]

希望这有帮助!