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
applying a function over an array
3 messages · BJ, Gabor Grothendieck
On 5/18/05, BJ <erithid at bellsouth.net> wrote:
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
If x is the 4x3 array: mapply(d, x[,1], x[,2], x[,3])
On 5/18/05, Gabor Grothendieck <ggrothendieck at gmail.com> wrote:
On 5/18/05, BJ <erithid at bellsouth.net> wrote:
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
If x is the 4x3 array: mapply(d, x[,1], x[,2], x[,3])
Also you might check if your d is vectorized already (it is in your example) in which case you can just do: d(x[,1], x[,2], x[,3])