簡體   English   中英

通過R中線性回歸的兩個預測變量組合

[英]By two combinations of predictors in linear regression in R

假設我有X1,...,X14潛在預測變量。

現在,對於給定的Y我想制定OLS方案:

Y~X1+X2
Y~X1+X3
 ....
Y~X1+X14
....
Y~X14+X13

這基本上是所有預測變量的兩個組合。 創建所有這些回歸之后,我想在predict函數中使用它們(如果可能)。

我的問題是:如何通過回歸變量的兩個組合對所有這些回歸進行回歸?

您可以使用combn的全部組合中,然后使用apply創建的所有公式:

#all the combinations
all_comb <- combn(letters, 2)

#create the formulas from the combinations above and paste
text_form <- apply(all_comb, 2, function(x) paste('Y ~', paste0(x, collapse = '+')))

產量

> text_form
  [1] "Y ~ a+b" "Y ~ a+c" "Y ~ a+d" "Y ~ a+e" "Y ~ a+f" "Y ~ a+g".....

然后,您可以使用as.formula將上述公式輸入到回歸中,以將文本轉換為公式(最有可能在另一個apply )。

您也可以將它們放在公式的一行中,如下所示:

mySpecs <- combn(letters[1:3], 2, FUN=function(x) reformulate(x, "Y"),
                 simplify=FALSE)

它返回一個可以在lapply用於運行回歸的列表:

mySpecs
[[1]]
Y ~ a + b
<environment: 0x4474ca0>

[[2]]
Y ~ a + c
<environment: 0x4477e68>

[[3]]
Y ~ b + c
<environment: 0x447ae38>

然后,您將執行以下操作以獲取回歸結果列表。

myRegs <- lapply(mySpecs, function(i) lm(i, data=df))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM