Hi, I would like to evaluate a function, with 3 arguments, for instance, myfunc<-function(a,b,c) { sqrt(a)-exp(b)+4*c } How to execute myfunc(x,y,z), for all x, all y and all z, where x,y,z are vectors? Thank you very much in advance -- View this message in context: http://r.789695.n4.nabble.com/Execute-a-function-tp4637182.html Sent from the R help mailing list archive at Nabble.com.
You mean executing the function for all combinations of values? For example, if you have a<-b<-c<-1:2 you would get back the values of myfunc(1,1,1) myfunc(1,1,2) myfunc(1,2,1) myfunc(1,2,2) myfunc(2,1,1) myfunc(2,1,2) myfunc(2,2,1) myfunc(2,2,2) ? On 20.07.2012, at 13:05, carla moreira wrote:> > Hi, > > I would like to evaluate a function, with 3 arguments, for instance, > > myfunc<-function(a,b,c) { sqrt(a)-exp(b)+4*c > } > > How to execute myfunc(x,y,z), for all x, all y and all z, where x,y,z are > vectors? > > Thank you very much in advance > > > > -- > View this message in context: http://r.789695.n4.nabble.com/Execute-a-function-tp4637182.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.
Not quite sure what you are aiming at, but looking at ?mapply or ?expand.grid could be helpful Benno On Jul 20, 2012, at 1:05 PM, carla moreira wrote:> > Hi, > > I would like to evaluate a function, with 3 arguments, for instance, > > myfunc<-function(a,b,c) { sqrt(a)-exp(b)+4*c > } > > How to execute myfunc(x,y,z), for all x, all y and all z, where x,y,z are > vectors? > > Thank you very much in advance > > > > -- > View this message in context: http://r.789695.n4.nabble.com/Execute-a-function-tp4637182.html > Sent from the R help mailing list archive at Nabble.com. > > ______________________________________________ > 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. >Benno Pütz Statistical Genetics MPI of Psychiatry Kraepelinstr. 2-10 80804 Munich, Germany T: ++49-(0)89-306 22 222 F: ++49-(0)89-306 22 601 [[alternative HTML version deleted]]
On 2012-07-20 04:05, carla moreira wrote:> > Hi, > > I would like to evaluate a function, with 3 arguments, for instance, > > myfunc<-function(a,b,c) { sqrt(a)-exp(b)+4*c > } > > How to execute myfunc(x,y,z), for all x, all y and all z, where x,y,z are > vectors?Is this what you have in mind: myfunc <- function(a, b, c){ sqrt(a)-exp(b)+4*c } myfunc2 <- function(x){ a <- x[1] b <- x[2] c <- x[3] myfunc(a, b, c) } x <- c(1, 4, 9) y <- 1:2 z <- c(10, -10, 2, 20) d <- expand.grid(x, y, z) d$value <- apply(d, 1, myfunc2) ? Peter Ehlers> > Thank you very much in advance > > > > -- > View this message in context: http://r.789695.n4.nabble.com/Execute-a-function-tp4637182.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. >