Hi there,
I want to do several bivariate linear regressions and, than, do a multivariate linear regression including only variables significantly associated *(p < 0.15)* with y in bivariate analysis, without having to look manually to those p values. So, here what I got for the moment. First, I use this data set: tolerance <- read.csv(" http://www.ats.ucla.edu/stat/r/examples/alda/data/tolerance1.txt"). Second, I used this command, allowing me to extract p-values later: lmp <- function (modelobject) { if (class(modelobject) != "lm") stop("Not an object of class 'lm' ") f <- summary(modelobject)$fstatistic p <- pf(f[1],f[2],f[3],lower.tail=F) attributes(p) <- NULL return(p)} Third, I did my bivariate linear regressions: fit = lm(exposure~tol11, data = tolerance) fit_2 = lm(exposure~tol12, data= tolerance) fit_3 = lm(exposure~tol13, data= tolerance) fit_4 = lm(exposure~tol14, data= tolerance) fit_5 = lm(exposure~tol15, data= tolerance) Fourth, I extracted p-values: lmp(fit) lmp(fit_2) lmp(fit_3) lmp(fit_4) lmp(fit_5) Firth, I confirmed that p-values were OK (just to be sure, it's the first time I used the above procedure) : summary (fit) summary (fit_2) summary (fit_3) summary (fit_4) summary (fit_5) And now, Im, I dont know what to do. The multivariate linear regression (if all variables were included) is: fit_multi = lm (exposure ~ tol11 + tol12 + tol13 + tol14 + tol15, data= tolerance) I would like to be able to do something like: fit_multi = lm (exposure ~ tol11 [include only if lmp( fit) < 0.15] + tol12 [include only if lmp(fit_2) < 0.15] + tol13 [include only if lmp(fit_3) < 0.15] + tol14 [include only if lmp(fit_4) < 0.15] + tol15 [include only if lmp(fit_4) < 0.15], data= tolerance) Any idea? Thank you! [[alternative HTML version deleted]]
______________________________________________ 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.