Peter Flom wrote:
David Winsemius <dwinsem...@comcast.net> wrote
I always assumed that the intercept was zero and the slope = unity.

 y <- rt(200, df = 5)
 qqnorm(y); qqline(y, col = 2)
 qqplot(y, rt(300, df = 5))
 abline(0, 1, col="red")


Suppose you have the following

x <- rnorm(500)
y <- 500*(x + runif(500, 0,1))
qqplot(x,y)


Then an abline(0,1) will not be useful; it will be an almost horizontal line. 
But

m1 <- lm(y~x)
abline(coef(m1))


does the trick.

Peter

That's not what qqline() does and for good reason - it treats
x and y asymmetrically.

But qqline() is a very simple function, using the quartiles
as also suggested by John. Here's a modified version that
should work for Carol:

qqline2 <- function (x, y, ...)
{
    y <- quantile(y[!is.na(y)], c(0.25, 0.75))
    x <- quantile(x[!is.na(x)], c(0.25, 0.75))
    slope <- diff(y)/diff(x)
    int <- y[1L] - slope * x[1L]
    abline(int, slope, ...)
}

I've just replaced the line using Normal quantiles with
the quantiles of x (and omitted the datax option).

 -Peter Ehlers




Peter L. Flom, PhD
Statistical Consultant
Website: www DOT peterflomconsulting DOT com
Writing; http://www.associatedcontent.com/user/582880/peter_flom.html
Twitter:   @peterflom

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.



______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to