Hi R sages, Here is my latest problem. Consider the following toy example:
x <- read.table(textConnection("y1 y2 y3 x1 x2 indv.1 bagels donuts bagels 4 6 indv.2 donuts donuts donuts 5 1 indv.3 donuts donuts donuts 1 10 indv.4 donuts donuts donuts 10 9 indv.5 bagels donuts bagels 0 2 indv.6 bagels donuts bagels 2 9 indv.7 bagels donuts bagels 8 5 indv.8 bagels donuts bagels 4 1 indv.9 donuts donuts donuts 3 3 indv.10 bagels donuts bagels 5 9 indv.11 bagels donuts bagels 9 10 indv.12 bagels donuts bagels 3 1 indv.13 donuts donuts donuts 7 10 indv.14 bagels donuts bagels 2 10 indv.15 bagels donuts bagels 9 6"), header = TRUE) I want to fit a logistic regression of y1 on x1 and x2. Then I want to run a logistic regression of y2 on x1 and x2. Then I want to run a logistic regression of y3 on x1 and x2. In reality I have many more Y columns than simply "y1," "y2," and "y3," so I must design a loop. Notice that y2 is invariant and thus it will fail. In reality, some y columns will fail for much more subtle reasons. Simply screening my data to eliminate invariant columns will not eliminate the problem. What I want to do is output a piece of the results from each run of the loop to a matrix. I want the to try each of my y columns, and not give up and stop running simply because a particular y column is bad. I want it to give me "NA" or something similar in my results matrix for the bad y columns, but I want it to keep going give me good data for the good y columns. For instance: results <- matrix(nrow = 1, ncol = 3) colnames(results) <- c("y1", "y2", "y3") for (i in 1:2) { mod.poly3 <- lrm(x[,i] ~ pol(x1, 3) + pol(x2, 3), data=x) results[1,i] <- anova(mod.poly3)[1,3] } If I run this code, it gives up when fitting y2 because the y2 is bad. It doesn't even try to fit y3. Here's what my console shows: > results y1 y2 y3 [1,] 0.6976063 NA NA As you can see, it gave up before fitting y3, which would have worked. How do I force my code to keep going through the loop, despite the rotten apples it encounters along the way? Exact code that gets the job done is what I am interested in. I am a post-doc -- I am not taking any classes. I promise this is not a homework assignment! Thanks in advance, ----------------------------------- Josh Banta, Ph.D Center for Genomics and Systems Biology New York University 100 Washington Square East New York, NY 10003 Tel: (212) 998-8465 http://plantevolutionaryecology.org [[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.