R: Recursively apply a permutation

recurse {magic} | R Documentation

## Recursively apply a permutation

### Description

Recursively apply a permutation to a vector an arbitrary number of times. Negative times mean apply the inverse permutation.

### Usage

    recurse(perm, i, start = seq_along(perm))

### Arguments

`perm` | Permutation (integers 1 to `length(start)` in some order)
`start` | Start vector to be permuted
`i` | Number of times to apply the permutation. `i=0` gives `start` by definition and negative values use the inverse permutation

### Author(s)

Robin K. S. Hankin

### See Also

`hudson`

### Examples

    n <- 15
    noquote(recurse(start=letters[1:n],perm=shift(1:n),i=0))
    noquote(recurse(start=letters[1:n],perm=shift(1:n),i=1))
    noquote(recurse(start=letters[1:n],perm=shift(1:n),i=2))

    noquote(recurse(start=letters[1:n],perm=sample(n),i=1))
    noquote(recurse(start=letters[1:n],perm=sample(n),i=2))

[Package magic version 1.5-8 Index]