使用模型矩阵而不是公式调用lm

时间:2016-02-18 14:39:32

标签: r lm

我希望使用lm在R中拟合线性模型以获得总体模型拟合的系数估计值和p值+ p值(类似ANOVA),因此基本上来自summary.lm的输出

问题是我想使用自己的模型矩阵,而不是在调用lm时使用公式指定它。

我尝试过使用底层的lm.fit函数来实现这一点,但后来我放弃了summary.lm函数的便利性,我不想再次重新计算所有的测试统计数据了

有没有办法'欺骗'lm并给它一个模型矩阵而不是公式?

谢谢!

1 个答案:

答案 0 :(得分:6)

以下是使用内置BOD数据框的示例:

# inputs
demand <- BOD$demand
mm <- model.matrix(~ Time, BOD) # model matrix

summary(lm(demand ~ mm + 0))

summary(lm(demand ~. + 0, as.data.frame(mm)))