On Fri, 2005-12-09 at 14:19 +0100, Patrick Kuss wrote: > Dear list, > > I want to retrieve the p-value of a two-polynomial regression. For a > one-polynomial lm I can easily do this with: > summary(lm(b~a, data=c)[[4]][[8]]. > > But how do I find the final p-value in the two-polynomial regression? Under > $coefficients I don't find it > > Any suggestions?
Judging from your code, you mean p-value of the F-statistic for the whole model - this isn't stored anywhere, see: getAnywhere(print.summary.lm) In particular this section: cat("\nResidual standard error:", format(signif(x$sigma, digits)), "on", rdf, "degrees of freedom\n") if (!is.null(x$fstatistic)) { cat("Multiple R-Squared:", formatC(x$r.squared, digits = digits)) cat(",\tAdjusted R-squared:", formatC(x$adj.r.squared, digits = digits), "\nF-statistic:", formatC(x$fstatistic[1], digits = digits), "on", x$fstatistic[2], "and", x$fstatistic[3], "DF, p-value:", format.pval(pf(x$fstatistic[1], x$fstatistic[2], x$fstatistic[3], lower.tail = FALSE), digits = digits), "\n") } The relevant bit being: format.pval(pf(x$fstatistic[1], x$fstatistic[2], x$fstatistic[3], lower.tail = FALSE) The reason this works for the first model is that with one covariate the value in $coefficients is the overall model p-value, in that case. With two covariates, the things in $coefficients relate to these, not to the overall model - your assumption was wrong in the first usage, you just lucked out that it gave the same result. So, p1 <- pf(lm.res$fstatistic[1], lm.res$fstatistic[2], lm.res$fstatistic[3], lower.tail = FALSE) p2 <- pf(lm.res.2$fstatistic[1], lm.res.2$fstatistic[2], lm.res.2$fstatistic[3], lower.tail = FALSE) Gives you the p-values: > p1 value 0.01368545 > p2 value 0.0461472 HTH G > > Patrick > > alt <-(2260,2183,2189,1930,2435, > 2000,2100,2050,2020,2470, > 1700,2310,2090,1560,2060, > 1790,1940,2100,2250,2010) > > H <- c(0.2034,0.1845,0.2053,0.1788,0.2196, > 0.2037,0.1655,0.2176,0.1844,0.2033, > 0.1393,0.2019,0.1975,0.1490,0.1917, > 0.2180,0.2064,0.1943,0.2139,0.1320) > > X <- data.frame(alt,H) > > lm.res <- summary(lm(H~alt,data=X)) > lm.res > p1 <- lm.res[[4]][[8]] > p1 > > lm.res.2 <- summary(lm(H~alt+I(alt^2),data=X)) > lm.res.2 > str(lm.res.2) # where is p > > p2 <- lm.res.2[[???]][[????]] > > -- > Patrick Kuss > PhD-student > Institute of Botany > University of Basel > Schönbeinstr. 6 > CH-4056 Basel > +41 61 267 2976 > > ______________________________________________ > R-help@stat.math.ethz.ch mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html -- %~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~% Gavin Simpson [T] +44 (0)20 7679 5522 ENSIS Research Fellow [F] +44 (0)20 7679 7565 ENSIS Ltd. & ECRC [E] gavin.simpsonATNOSPAMucl.ac.uk UCL Department of Geography [W] http://www.ucl.ac.uk/~ucfagls/cv/ 26 Bedford Way [W] http://www.ucl.ac.uk/~ucfagls/ London. WC1H 0AP. %~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~% ______________________________________________ R-help@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html