joeponzio
2010-Nov-23 01:38 UTC
[R] using the "apply" method for functions with multiple inputs
hello r users, i'm trying to use the apply method on a function with several inputs, but cannot figure out how to send multiple arguments to the function (not multiple runs of the same function, but one run of the function including two variables - each used within the function). a <- c(1:10,999,999,999) b <- c(11:20,999,999,999) tfun <- function(x,y){ if( (x = 1 & y !=999) || (x > 1 & x < 999 & y == 999) ) x1 <- 1 else x1 <-0 } #this doesn't work - gives an error " 'y' is missing tfilt <- sapply(data.frame(a,b), tfun) thanks, joe -- View this message in context: http://r.789695.n4.nabble.com/using-the-apply-method-for-functions-with-multiple-inputs-tp3054719p3054719.html Sent from the R help mailing list archive at Nabble.com.
David Winsemius
2010-Nov-23 02:43 UTC
[R] using the "apply" method for functions with multiple inputs
On Nov 22, 2010, at 8:38 PM, joeponzio wrote:> > hello r users, > > i'm trying to use the apply method on a function with several > inputs, but > cannot figure out how to send multiple arguments to the function (not > multiple runs of the same function, but one run of the function > including > two variables - each used within the function). > > a <- c(1:10,999,999,999) > b <- c(11:20,999,999,999) > > tfun <- function(x,y){ > if( (x = 1 & y !=999) || (x > 1 & x < 999 & y == 999) )There is a problem with that first logical test, assigns 1 to x rather than testing.> x1 <- 1 > else > x1 <-0 > } >> mapply("tfun", a, b) [1] 1 1 1 1 1 1 1 1 1 1 0 0 0 (but see above if that were not what you expected.)> #this doesn't work - gives an error " 'y' is missing > tfilt <- sapply(data.frame(a,b), tfun) > > thanks, > joe > > -- > View this message in context: http://r.789695.n4.nabble.com/using-the-apply-method-for-functions-with-multiple-inputs-tp3054719p3054719.html > Sent from the R help mailing list archive at Nabble.com. > > ______________________________________________ > R-help at 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.David Winsemius, MD West Hartford, CT