[R] combinations

Warnes, Gregory R gregory_r_warnes at groton.pfizer.com
Thu Nov 7 22:22:25 CET 2002


The "gregmisc" package provides the 'combinations' function, which can be
used as:

> combinations(n=4, r=3, c('a','b','c','d') )
     [,1] [,2] [,3]
[1,] "a"  "b"  "c" 
[2,] "a"  "b"  "d" 
[3,] "a"  "c"  "d" 
[4,] "b"  "c"  "d" 

where each row contains one possible combination.

The 'combinat' package provides the 'combn' function which can be used as:

> combn( c('a','b','c','d'), 3 )
     [,1] [,2] [,3] [,4]
[1,] "a"  "a"  "a"  "b" 
[2,] "b"  "b"  "c"  "c" 
[3,] "c"  "d"  "d"  "d" 

where each column contains one possible combination.

-Greg

> -----Original Message-----
> From: Michaell Taylor [mailto:pols1oh at bestweb.net]
> Sent: Thursday, November 07, 2002 2:52 PM
> To: r-help at stat.math.ethz.ch
> Subject: [R] combinations
> 
> 
> 
> I need to construct all possible combinations of an vector of 
> length N taken
> X at a time for simulation purposes.  Taking a a small vector 
> as an example:
> 
> 
> >input <- c('a','b','c','d')
> >somefunction(input)
> a,b,c
> a,b,d
> a,c,d
> b,c,d
> 
> my only solution thus far is:
> 
> somefunction <- function(x){
>       ...a series of grotesque and horribly inefficient loops
>       deleted to save face.
>       }
> 
> For my purposes, N=20 and X=5, meaning there are about 15k 
> combinations.
> 
> I assumed this might be a common problem, but I am coming up 
> empty on my searches
> of the usual suspect web sites.
> 
> Thanks in advance for any pointers anyone may have.
> 
> Michaell
> -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.
> -.-.-.-.-.-.-.-.-
> r-help mailing list -- Read 
> http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
> Send "info", "help", or "[un]subscribe"
> (in the "body", not the subject !)  To: 
> r-help-request at stat.math.ethz.ch
> _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._.
> _._._._._._._._._
> 


LEGAL NOTICE
Unless expressly stated otherwise, this message is confidential and may be privileged. It is intended for the addressee(s) only. Access to this E-mail by anyone else is unauthorized. If you are not an addressee, any disclosure or copying of the contents of this E-mail or any action taken (or not taken) in reliance on it is unauthorized and may be unlawful. If you are not an addressee, please inform the sender immediately.
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._



More information about the R-help mailing list