[R] how to get the p-values from an lm function ?
Prof Brian Ripley
ripley at stats.ox.ac.uk
Thu Jul 12 12:31:07 CEST 2007
On Thu, 12 Jul 2007, hadley wickham wrote:
> On 7/12/07, Benoit Chemineau <benoitchemineau at gmail.com> wrote:
>> Hi, dear R-users,
>>
>> I am computing a liner regression by rating category using the 'by' function
>> as stated below:
>>
>> tmp <- by(projet, rating, function(x) lm(defaults ~ CGDP+CSAVE+SP500, data =
>> x))
>>
>> I would like to get not only the coefficients but also their p-values. I
>> can't find the command in the help pages to get them.
>>
>> Does anyone have a suggestion ?
>
> Hi Benoit,
>
> A general approach to find p-values:
>
> m <- lm(wt ~ mpg, data=mtcars)
>
> First figure out how to display them on screen:
> m # nope
> coef(m) # nope
> summary(m) # got it
>
> # Then use str to look at the components
> str(summary(m))
>
> # And pick out the one want
> summary(m)$coef
> coef(summary(m)) # slighty better style, but won't work in general
If x$coef works, coef(x) will almost certainly work at least as well.
But note that in most cases it is x$coefficients and so x$coef is liable
to partially match erroneously.
> # In general, you may also need to try
> str(print(summary(m)))
> # as sometimes the print method calculates the data you're looking for
But a print method should always return its input, so
str(summary(m))
str(print(summary(m)))
should be the same.
Reading the help pages would be a very good idea, as they usually not only
tell you the names of the components of the result but also what they
mean.
--
Brian D. Ripley, ripley at stats.ox.ac.uk
Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/
University of Oxford, Tel: +44 1865 272861 (self)
1 South Parks Road, +44 1865 272866 (PA)
Oxford OX1 3TG, UK Fax: +44 1865 272595
More information about the R-help
mailing list