[R] How to manipulate an abitrary dimensioned array.

Mike Meyer mikem at salter-point.com
Thu Oct 27 23:49:31 CEST 2005


If I have an n1 x n1 x 2 array X I can calculate, say,
X[,,1]/X[,,2].

If it is a 4 dimensional array then I want to be able to calculate
X[,,,1]/X[,,,2], and similarly for higher dimensions.

How can I write a function to do this in a general way without having to 
do a switch for each possible length(dim(X)).  So I want a function g 
that will take an arbitrary dimensioned array, X, and return 
X[,,,1]/X[,,,2], etc.   I know how to do this by turning X into a 
vector, then doing the division, then re-shaping as an array, but that 
doesn't seem very elegant.

What I think I am missing is how to paste/substitute/eval a bunch of 
commas into an array selection.

Thanks, --Mike

--
Mike Meyer,  Seattle WA




More information about the R-help mailing list