Thanks very much Milan. Your answer makes perfect sense. Best,
Andrew On Wed, Feb 13, 2013 at 3:51 AM, Milan Bouchet-Valat <nalimi...@club.fr>wrote: > Le mardi 12 février 2013 à 15:41 -0600, Andrew Barr a écrit : > > Hi all, > > > > I am searching for a way to recover results from lapply() when one or > more > > values returns an error. I have a written a function that uses > tryCatch() > > to recover from errors. Here is a very simple example of such a function. > > > > divideBy2<-function(X){ > > result<-tryCatch(X/2, error = function(e) "An Error Occurred") > > return(result) > > } > > > > This function appears to work as I expect both in cases where an error > > occurs and where no error occurs. > > > > divideBy2(10) > > # [1] 5 > > > > divideBy2("This is not a number") > > # [1] "An Error Occurred" > > > > I would like to use this function in an lapply(), but when I do so ALL of > > the results returned are the results of an error. > > > > lapply(c(10,"This is not a number"),FUN=divideBy2) > > > > #[[1]] > > #[1] "An Error Occurred" > > > > #[[2]] > > #[1] "An Error Occurred" > > > > Is this how lapply() is meant to work? What I want is a list that looks > > like this > The problem happens before lapply() itself: > > c(10,"This is not a number") > [1] "10" "This is not a number" > > A vector can only contain values of the same type, so 10 is converted to > a character value, and divideBy2("10") does not work. Try with: > lapply(list(10, "This is not a number"), divideBy2) > > All that means that in real use cases, your tryCatch() solution should > work (I have not tested it). The bug is in your toy example. > > > Regards > > > #[[1]] > > #[1] 5 > > #[[2]] > > #[1] "An Error Occurred" > > > > Thanks very much for your time. > > > > [[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. > > [[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.