permute {jwutil} | R Documentation |
Systematically permute the input vector or list, which is very slow for long x. Am amazed something this simple isn't either in base R, or in a straightforward form in a package.
permute(x)
x |
list or vector |
TODO: limit to a certain cut-off, after which we randomly sample
data frame, each row being one permutation
ltr <- c("a", "b", "c", "d") x <- permute(ltr) print(x) stopifnot(nrow(x) == factorial(length(ltr))) ltr <- c("a", "b", "b") x <- permute(ltr) print(x) stopifnot(nrow(x) == factorial(length(ltr)))