【问题标题】:Linear regression of same outcome, similar number of covariates and one unique covariate in each model每个模型中相同结果、相似数量的协变量和一个唯一协变量的线性回归
【发布时间】:2015-05-07 11:03:32
【问题描述】:

我想对相同的结果和每个模型中的多个协变量减去一个协变量运行线性回归。我已经查看了这个 page 上的示例,但它不能提供我想要的。

样本数据

a <- data.frame(y = c(30,12,18), x1 = c(7,6,9),  x2 = c(6,8,5),
                x3 = c(4,-2,-3), x4 = c(8,3,-3), x5 = c(4,-4,-2))
m1 <- lm(y ~ x1 + x4 + x5, data = a)    
m2 <- lm(y ~ x2 + x4 + x5, data = a)   
m3 <- lm(y ~ x3 + x4 + x5, data = a)

我怎样才能在不重复相同协变量的情况下快速运行这些模型?

【问题讨论】:

    标签: r formula linear-regression


    【解决方案1】:

    按照this example 你可以这样做:

    lapply(1:3, function(i){
        lm(as.formula(sprintf("y ~ x%i + x4 + x5", i)), a)
    })
    

    【讨论】:

    • 感谢 Backlin 的回答。我想我没有清楚地表达我的问题。在模型中,x4 和 x5 存在于所有模型中,但 x1、x2 和 x3 是可互换的,并且仅存在于一个模型中。
    • 啊哈,没问题我会更新答案。我被x1x4 之间多余的+ 愚弄了,所以我认为你也想要介于两者之间。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-08-07
    • 2020-09-19
    • 2016-02-03
    • 1970-01-01
    • 2014-05-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多