如何使用lm函数来处理大量属性

时间:2014-01-29 04:34:36

标签: r linear-regression

我的数据集包含1个标签属性,784个像素属性包含42000行,如下所示

label  pixel0  pixel1  pixel2 ...........  pixel783  
0        1     0         0                   16
.  
.  
1        2      15       1                    0

现在我想对它进行回归,因此我使用lm函数

lm(label~pixel0+pixel1+pixel2..........+pixel784,data=df )

但是,根据我的愚蠢,将pixel0写入像素784就是这样 有没有办法避免手动编写上面的exp或我必须这样做?

1 个答案:

答案 0 :(得分:1)

你可以用。如formula的帮助页面中所述。的。代表"all columns not otherwise in the formula"

lm(label ~ ., data = df)

或者,使用粘贴手动构建配方。此示例来自as.formula()帮助页面:

xnam <- paste("x", 1:784, sep="")
(fmla <- as.formula(paste("y ~ ", paste(xnam, collapse= "+"))))

然后,您可以将此对象插入回归函数:

lm(fmla, data = df)