Enumerate the Combinations or Permutations of the Elements of a Vector
combinations
enumerates the possible combinations of a
specified size from the elements of a vector. permutations
enumerates the possible permutations.
combinations(n, r, v=1:n, set=TRUE, repeats.allowed=FALSE) permutations(n, r, v=1:n, set=TRUE, repeats.allowed=FALSE)
n |
Size of the source vector |
r |
Size of the target vectors |
v |
Source vector. Defaults to |
set |
Logical flag indicating whether duplicates should be
removed from the source vector |
repeats.allowed |
Logical flag indicating whether the
constructed vectors may include duplicated values. Defaults to
|
Caution: The number of combinations and permutations increases rapidly
with n
and r
!.
To use values of n
above about 45, you will need to increase
R's recursion limit. See the expression
argument to the
options
command for details on how to do this.
Returns a matrix where each row contains a vector of length r
.
Original versions by Bill Venables
Bill.Venables@cmis.csiro.au. Extended to handle
repeats.allowed
by Gregory R. Warnes
greg@warnes.net.
Venables, Bill. "Programmers Note", R-News, Vol 1/1, Jan. 2001. https://cran.r-project.org/doc/Rnews/
combinations(3,2,letters[1:3]) combinations(3,2,letters[1:3],repeats=TRUE) permutations(3,2,letters[1:3]) permutations(3,2,letters[1:3],repeats=TRUE) # To use large 'n', you need to change the default recusion limit options(expressions=1e5) cmat <- combinations(300,2) dim(cmat) # 44850 by 2
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.