如何使用带有分类和连续变量的LASSO来预测连续变量?

时间:2017-08-21 10:05:39

标签: r categorical-data lasso

我有一个数据库,有5000个观察(行)和40个变量(列)。分类变量的数量是25,连续变量的数量是15.我想使用回归模型来使用分类和连续预测变量(变量)来预测连续变量。此外,我考虑使用套索算法(来自包glmnet的glmnet())进行一种特征选择,以防止将所有变量用作预测变量,并仅使用由套索(重要的)确定的一些变量。

我的问题是套索如何处理分类变量? 我应该将我的数据帧转换为矩阵,因为glmnet()获取矩阵类型的数据。当我将其转换为矩阵时,所有列的类都会更改为字符。但是你知道我需要一些列是绝对的,有些是连续的。我该如何解决这个问题呢?

换句话说,如何对具有某些分类和一些连续变量的数据进行回归模型和套索选择,以预测连续变量?

我创建了一个数据库作为玩具数据:

a <- sample(1000:1000000 , 60 , replace = T)
b <- sample(50000:100000000 , 60 , replace = T )
c <- sample(1:90 , 60 , replace = T)
d <- c("accident" , "injury" , "surgical" , "poison")
d <- rep(d , 15 )
e <- paste(letters[1:6] , "#" , sep="")
e <- rep(e, 10)
x <- cbind(a,b,c,d,e)
data.toy <- as.data.frame(x) 
head(data.toy)
data.toy$a <- as.numeric(data.toy$a)
data.toy$b <- as.numeric(data.toy$b)
data.toy$c <- as.numeric(data.toy$c)

变量a,b是连续的,d,e是绝对的。这四个是预测变量,响应是b列是连续的。使用此玩具数据来帮助解决我的问题。

非常感谢任何一点帮助。

0 个答案:

没有答案