Permutations {arrangements} | R Documentation |
Permutations iterator
Description
This function returns a Permutations iterator for iterating
permutations of k
items from n
items. The iterator allows users to fetch the next
permutation(s) via the getnext()
method.
Usage
Permutations
ipermutations(x = NULL, k = NULL, n = NULL, v = NULL,
freq = NULL, replace = FALSE, skip = NULL)
Arguments
x |
an integer or a vector, will be treated as |
k |
an integer, the number of items drawn, defaults to |
n |
an integer, the total number of items, its value may be implicitly deduced from |
v |
a vector to be drawn, defaults to |
freq |
an integer vector of item repeat frequencies |
replace |
an logical to draw items with replacement |
skip |
the number of combinations skipped |
Format
An object of class R6ClassGenerator
of length 25.
Details
The Permutations
class can be initialized by using the convenient wrapper ipermutations
or
Permutations$new(n, k, v = NULL, freq = NULL, replace = FALSE)
getnext(d = 1L, layout = NULL, drop = NULL) collect(layout = "row") reset()
- d
number of fetched arrangements
- layout
if "row", "column" or "list" is specified, the returned value would be a "row-major" matrix, a "column-major" matrix or a list respectively
- drop
vectorize a matrix or unlist a list
See Also
permutations for generating all permutations and npermutations to calculate number of permutations
Examples
iperm <- ipermutations(5, 2)
iperm$getnext()
iperm$getnext(2)
iperm$getnext(layout = "column", drop = FALSE)
# collect remaining permutations
iperm$collect()
library(foreach)
foreach(x = ipermutations(5, 2), .combine=c) %do% {
sum(x)
}