Partitions {arrangements} | R Documentation |
Partitions iterator
Description
This function returns a Partitions iterator for iterating
partitions of an non-negative integer n
into k
parts or parts of any sizes.
The iterator allows users to fetch the next partition(s) via the getnext()
method.
Usage
Partitions
ipartitions(n, k = NULL, distinct = FALSE, descending = FALSE,
skip = NULL)
Arguments
n |
an non-negative integer to be partitioned |
k |
number of parts |
distinct |
an logical to restrict distinct values |
descending |
an logical to use reversed lexicographical order |
skip |
the number of partitions skipped |
Format
An object of class R6ClassGenerator
of length 25.
Details
The Partitions
class can be initialized by using the convenient wrapper ipartitions
or
Partitions$new(n, k = NULL, descending = 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
partitions for generating all partitions and npartitions to calculate number of partitions
Examples
ipart <- ipartitions(10)
ipart$getnext()
ipart$getnext(2)
ipart$getnext(layout = "column", drop = FALSE)
# collect remaining partitions
ipart$collect()
library(foreach)
foreach(x = ipartitions(6, 2), .combine=c) %do% {
prod(x)
}