r - 通过 R 中线性回归中预测变量的两种组合

标签 r linear-regression lm

假设我有 X1,...,X14 潜在预测因子。

现在对于给定的 Y 我想制定 OLS 方案:

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

这基本上是所有预测变量的两个组合。创建所有这些回归后,我想在 predict 函数中使用它们(如果可能)。

我的问题是:如何通过两个回归变量的组合来进行所有这些回归?

最佳答案

您也可以像这样将它们放入一行公式中:

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))

关于r - 通过 R 中线性回归中预测变量的两种组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42192313/

相关文章:

r - 滞后函数返回 NA

r - 以计数矩阵作为响应的多项式

python - LinearRegression() 中的 coef_ 值代表什么?

r - 如何正确地将 `dput` 拟合线性模型(通过 `lm` )转换为 ASCII 文件并稍后重新创建?

r - LM 和 LME 结果的标准误

r - 循环中的 predict.lm()。警告 : prediction from a rank-deficient fit may be misleading

r - plyr包安装错误

r - R 中的精度、召回率和 f 度量

python - Patsy 版本和 Dummy 列表版本之间使用 Statsmodels 进行线性回归的差异

r - 强制某些参数在 lm() 中具有正系数