【问题标题】:regarding building regression models including interaction effects in lm [duplicate]关于构建回归模型,包括 lm 中的交互效应 [重复]
【发布时间】:2014-11-15 20:58:07
【问题描述】:

我有一个数据集如下所示

test<-read.csv("data.csv",sep=",",header=T)

有 10 个预测变量。第一列是响应变量

x<-test[,-c(1)]
y<-test[,1]

如果我想用前三个预测变量(包括它们的交互项)来测试一个模型,这就是我对 lm 所做的操作

test.model<-lm(y~x[,1]*x[,2]*x[,3], data=test)

但结果发现生成的模型还包含x[, 1]:x[, 2]:x[, 3]的交互项我如何将模型限制为只有两个因素交互,例如x[, 1]:x[, 2]x[, 2]:x[, 3]x[, 1]:x[, 3]

如果我想考虑所有 10 个预测变量,而不是写 x[,1]*x[,2]*x[,3]*x[,4]*...x[,10],有没有方便的方法来写这个公式?

【问题讨论】:

    标签: r statistics regression


    【解决方案1】:

    您可以使用^ 指定最高交互顺序。

    y ~ (x[,1] + x[,2] + x[,3]) ^ 2
    

    导致所有二元交互作用和主效应。

    【讨论】:

      【解决方案2】:

      两点。如果您还要提供数据参数,则将预测变量和响应提取为单独的项目是没有意义的。在最坏的情况下,它会在奇怪的时刻开始失败,但至少会让你的合作者感到困惑。如果您有有意义的列名,这将很容易解释。

      正如 Sven 指出的那样,您可以使用“^”公式运算符,这意味着与求幂完全不同的东西。我很确定这是一个重复的 SO 问题,所以现在将进行一些搜索。

      【讨论】:

        猜你喜欢
        • 2014-10-08
        • 2016-02-12
        • 2023-03-03
        • 2020-12-10
        • 2015-01-14
        • 2013-02-14
        • 2018-10-04
        • 2017-06-03
        • 2021-07-13
        相关资源
        最近更新 更多