combinations {OBsMD} | R Documentation |
Enumerate the Combinations of the Elements of a Vector
Description
combinations
enumerates the possible combinations of a
specified size from the elements of a vector.
Usage
combinations(n, r, v=1:n, set=TRUE, repeats.allowed=FALSE)
Arguments
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
|
Details
Caution: The number of combinations 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.
Value
Returns a matrix where each row contains a vector of length r
.
Author(s)
Original versions by Bill Venables
Bill.Venables@cmis.csiro.au. Extended to handle
repeats.allowed
by Gregory R. Warnes
greg@warnes.net.
References
Venables, Bill. "Programmers Note", R-News, Vol 1/1, Jan. 2001. https://cran.r-project.org/doc/Rnews/
Examples
combinations(3,2,letters[1:3])
combinations(3,2,c(1:3),repeats=TRUE)
combinations(6,3,1:6,repeats=TRUE)
# To use large 'n', you need to change the default recusion limit
options(expressions=1e5)
cmat <- combinations(100,2)
dim(cmat) # 4950 by 2