aperm                  package:base                  R Documentation

Array Transposition

Description:

     Transpose an array by permuting its dimensions and optionally
     resizing it.

Usage:

     aperm(a, perm, resize = TRUE)

Arguments:

       a: the array to be transposed.

    perm: the subscript permutation vector, which must be a permutation
          of the integers `1:n', where `n' is the number of dimensions
          of `a'.  The default is to reverse the order of the
          dimensions.

  resize: a flag indicating whether the vector should be resized as
          well as having its elements reordered (default `TRUE').

Value:

     A transposed version of array `a', with subscripts permuted as
     indicated by the array `perm'.  If `resize' is `TRUE', the array
     is reshaped as well as having its elements permuted, the
     `dimnames' are also permuted; if `FALSE' then the returned object
     has the same dimensions as `a', and the dimnames are dropped.

     The function `t' provides a faster and more convenient way of
     transposing matrices.

Author(s):

     Jonathan Rougier, J.C.Rougier@durham.ac.uk did the faster C
     implementation.

See Also:

     `t', to transpose matrices.

Examples:

     # interchange the first two subscripts on a 3-way array x
     x  <- array(1:24, 2:4)
     xt <- aperm(x, c(2,1,3))
     stopifnot(t(xt[,,2]) == x[,,2],
               t(xt[,,3]) == x[,,3],
               t(xt[,,4]) == x[,,4])

