`rms :: ols()`:如何在没有拦截的情况下拟合模型

时间:2014-04-08 06:05:26

标签: r linear-regression lm

我想使用ols()包中的rms(普通最小二乘)函数进行多元线性回归,但我不希望它计算截距。使用lm()语法就像:

model <- lm(formula = z ~ 0 + x + y, data = myData)

0阻止它计算截距,只返回两个系数,xy的其他系数。使用ols()时如何执行此操作? 试图

model <- ols(formula = z ~ 0 + x + y, data = myData)

无效,它仍会为xy返回截距和系数。

Here is a link to a csv file

它有五列。对于此示例,只能使用前三列:

model <- ols(formula = CorrEn ~ intEn_anti_ncp + intEn_par_ncp, data = ccd)

谢谢!

1 个答案:

答案 0 :(得分:0)

rms::ols使用rms:::Design代替model.frame.default。使用默认值Design调用intercept = 1,因此没有(明显的)方法来指定没有拦截。我认为这是有充分理由的,但您可以尝试使用ols更改trace