On Mon, 21 Jun 2010, Duplisea, Daniel wrote:

Hello. Given this group assignment vector x:

x= rep(letters[1:3],c(9,21,9))

I would like to know the number of all possible unique permutations of x and also obtain the matrix of them.

Do you mean what would

        ncol( unique( replicate( Inf, sample(x) ) , MARGIN=2 ) )

be if you had a computer capable of carrying out the calculation?

Well, the answer would be choose(39,9)*choose(30,9) >        3e+15.

So on earthly computers you have no chance of enumerating the matrix.


Thus, each vector should still
contain 9*a, 21*b and 9*c, but case assigment must be different for one case (default at least 2) for each permuation.

??

Unless you meant what I suggested above, define 'case'. Better still, give an example.


a, b and c can be
interspersed in permuted vectors, i.e. order does not matter. If this unique permutation matrix is very large then I would like to choose a subset of it. I can easily permute the vector with sample(x) but if I repeat this n>1 times there is no guarantee of uniqueness.

Do you really need uniqueness?

If this is for some statistical procedure, a small probability of duplicates will likely not matter. And you can always toss out the duplicates if you ever encounter them.

For a small
number of samples, I could look for unique vectors and keep only those but this seems awkward and I suspect there are more elegant ways to do it.

Is there an r function which will allow me to calculate both how many unique permutations of x exist and also obtain a matrix of them and/or a subset of that matrix?


        See ?choose for this problem, and ?unique for smaller problems.

HTH,

Chuck

Thanks very much,
Daniel

______________________
Daniel Duplisea
PĂȘches et OcĂ©ans / Fisheries and Oceans Canada
Institut Maurice-Lamontagne
Mont-Joli, QC
G5H 3Z4
Canada

tel: 1 418 775 0881
fax: 1 418 775 0740

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


Charles C. Berry                            (858) 534-2098
                                            Dept of Family/Preventive Medicine
E mailto:cbe...@tajo.ucsd.edu               UC San Diego
http://famprevmed.ucsd.edu/faculty/cberry/  La Jolla, San Diego 92093-0901

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to