[Rd] abline for intercept-only simple lm models (with and without offset)

Tobias Verbeke tobias.verbeke at gmail.com
Sun Dec 17 22:34:50 CET 2006


Martin Maechler wrote:
> Yes, I think  all your propositions would be improvements.
> OTOH, I don't think the improvements warrant a big increase in
> code (complexity), nor do I think the improvements are crucial
> for R's integrity.
>
> So...
> If you (our someone else) provides a patch {against
> R-devel, as always} which keeps the code simple,
> I'd strongly consider adding that to R.
>   
Dear Martin,

Thank you for the encouragement.

Please find a patch in attachment.
As you will see, I also added a warning
for models with more than 2 parameters.

Kind regards,
Tobias

> Regards,
> Martin Maechler
>
>   
>>>>>> "Tobias" == Tobias Verbeke <tobias.verbeke at telenet.be>
>>>>>>     on Sat, 09 Dec 2006 22:42:38 +0100 writes:
>>>>>>             
>
>     Tobias> The abline function can be used to draw the
>     Tobias> regression line when one passes the lm object as an
>     Tobias> argument.
>
>     Tobias> However, if it's an intercept-only model, it appears
>     Tobias> to use the intercept as the slope of the abline:
>
>     Tobias> mod <- lm(dist ~ 1, data = cars) plot(dist ~ speed,
>     Tobias> data = cars) abline(reg = mod) # nothing appears
>
>     Tobias> This behaves as documented, but might catch
>     Tobias> someone. Would it be an improvement if this
>     Tobias> situation was detected so as to plot the appropriate
>     Tobias> horizontal line, i.e.
>
>     Tobias> abline(a = coef(mod), b = 0) ?
>
>     Tobias> Would it also be an improvement if for a model like
>
>     Tobias> mod2 <- lm(dist ~ 1 + offset(speed), data = cars)
>
>     Tobias> abline(reg = mod2) would be equivalent to
>
>     Tobias> abline(a = coef(mod2), b = 1) ?
>
>     Tobias> For models through the origin, the current function
>     Tobias> works fine, but one might even consider models
>     Tobias> through the origin and having the independent
>     Tobias> variable in an offset() to be fully fool-proof, i.e.
>
>     Tobias> abline(a = 0, b = 1)
>
>     Tobias> Kind regards, Tobias
>
>     Tobias> ______________________________________________
>     Tobias> R-devel at r-project.org mailing list
>     Tobias> https://stat.ethz.ch/mailman/listinfo/r-devel
>
>
>   

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: diff_abline.R
Url: https://stat.ethz.ch/pipermail/r-devel/attachments/20061217/8a5aa44e/attachment.pl 


More information about the R-devel mailing list