【发布时间】:2019-08-17 17:46:32
【问题描述】:
有人知道从 lm 对象中提取完整线性方程的现有函数吗?
假设我有:
lm1 = lm(y~x1+x2...xn, data=df)
对于我正在学习的这门回归课程,教授反复希望得到以下形式的回归方程:e(y) = b1 +b2x1 [...] bnx(n-1)。
目前,我正在做这样的事情:
(paste("y=", coef(lm1)[1], '+', coef(lm1[2]), '*x2', [...])
这样的情况已经持续了几个星期。复制和粘贴上面的粘贴函数不会是一个大问题,但他想要那里的实际变量标签而不是 y、x1 等。如您所见,我的手和心因反复这样做而受伤。
我已经为此跨越了痛苦的门槛,今天开始考虑为此创建自己的函数,但我只是在检查是否有人知道现有的自动执行此操作的函数。
我认为创建一个执行相同粘贴函数的函数不会特别困难,除了系数数量的可变长度,但这只是我宁愿使用现有解决方案的地方product 是一个无用的构造。
注意:这与此处提出的问题非常相似,但也不完全相同: Extract Formula From lm with Coefficients (R)
为什么不一样?这些问题解决了“如何从 lm 对象中提取线性回归方程?”的一次性案例。这个问题是,“是否存在现有的基本方法或(如果没有)系统地从 lm 对象获取线性回归方程的方法。当您看到此处提出的答案与另一页上接受的答案。
【问题讨论】:
-
谢谢,我看到了那个,但我认为必须有一个现有的内置函数。我想我只需要修改那个就可以得到一个可以调整正确数量的预测变量。
-
实际上,链接的 SO 帖子中的代码会自动调整预测变量的数量。
-
我对您引用的帖子做出了新的回答,该帖子的解决方案非常通用。不需要
paste0。
标签: r linear-regression lm