See ?na.exclude On Fri, 23 Jan 2009, Neil Beddoe wrote:
Hi. I need to apply run a regression analysis for groups of data of fixed length:100 As, 100 Bs, 100 Cs etc. eg x Key Value A 1 A 21.2 A 4 A 6.5 ...repeat 96 times with differing values of A B 1 B 2.3 B NA B 6.5 ...repeat 96 times with differing values of B etc I run these against a linear model using tapply(data$Value, data$Key,FUN=regr,100) where regr<-function(x,w) { #run the model against the last w values of x lm((x[length(x)-w):length(x)]~myModel(w)) } In the results, I want to return NA for any Key group where one or more of the values is NA. If I run the above I get a regression structure ignoring the missing values and returning values for data that contains NA. Using na.action=na.fail or na.action=NULL causes the whole tapply function to fail and I get nothing. Is there a way I can get lm to return NA if any of the values in the data are NA but valid numbers for complete data? I realise that I could remove the groups with NAs but I'm running the regressions over multiple time periods and most of the data groups will have a full complement of data for at least some of these periods. It becomes a pain to manage NAs if I do that. Sorry if the above is a little unclear. Thanks Neil
-- Brian D. Ripley, rip...@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 ______________________________________________ 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.