首页 > 解决方案 > 查看计算线 Avplot 函数的斜率

问题描述

我在 R 中使用 Avplots 函数。该函数在图表上放置一条拟合线,我想知道是否有办法查看该线的方程。我知道我可以使用 lm 函数在计算上重现它,但我很好奇是否有办法查看用于生成图形的“后端”代码。

谢谢!

下面是一些代码。该函数采用线性模型,后跟要为其创建 avPlots 的变量(全部针对回归量)。

avPlots(mlm1,terms=~pctUrban+log(ppgdp))

标签: rregression

解决方案


我对附加变量图不是很熟悉,但有一个想法,尽管我不完全确定您在寻找什么。我希望这可能会有所帮助。

假设您有一个使用lm这样的线性模型的示例(也来自 Car 包):

res <- avPlots(lm(prestige~income+education+type, data=Duncan))

这包括 1950 年 45 个美国职业的声望和其他特征的数据。

返回的数据res将具有生成的四个绘图中的每一个的数据点(见下文)。该avPlot函数使用lsfit(最小二乘拟合)拟合线。这也可以从每个因子的返回数据中完成(例如,对于typeprof):

fit <- lsfit(res$typeprof[,1], res$typeprof[,2])

然后你可以从coefficients(16.7) 得到你的斜率:

fit$coefficients
   Intercept            X 
4.178364e-16 1.665751e+01 

如前所述,这将给出与lm模型相同的斜率:

Call:
lm(formula = prestige ~ income + education + type, data = Duncan)

Coefficients:
(Intercept)       income    education     typeprof       typewc  
    -0.1850       0.5975       0.3453      16.6575     -14.6611  

示例加变量图


推荐阅读