[R] applying a function over an array

McGehee, Robert Robert.McGehee at geodecapital.com
Wed May 18 15:21:17 CEST 2005


This will do it.

> a <- array(1:12, c(4, 3))
> d <- function(a,b,c) {a+b+c}
> apply(a, 1, function(x) do.call("d", sapply(x, list)))
[1] 15 18 21 24

-----Original Message-----
From: BJ [mailto:erithid at bellsouth.net] 
Sent: Wednesday, May 18, 2005 9:10 AM
To: r-help at stat.math.ethz.ch
Subject: [R] applying a function over an array


Is there a way to apply a function with several arguements over an 
array? For instance if you had a function d<-function(a,b,c) {a+b+c} and

a 4,3 array, could you apply the function over each line of the array? 
tapply seems to only allow one argument, and I just can't think of a way

to explicitly tell R that I am passing it 3 distinct objects instead of 
1 complex one.  Thank you as always for your help. ~Erithid

______________________________________________
R-help at stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide!
http://www.R-project.org/posting-guide.html




More information about the R-help mailing list