On Jul 5, 2011, at 7:16 PM, Q wrote:
Hello,I'm trying to create a data frame where each row has a unique combination offactors. I start with a vector of species like so:1> test <- c("A","B","C","D") 1> test [1] "A" "B" "C" "D"To get all species combinations I have used expand.grid like this:1> pairs <- expand.grid(test,test)1> pairsVar1 Var21 A A 2 B A 3 C A 4 D A 5 A B
snipped
Now I want to select only the unique pairs, which I have tried to do withthe function "unique":1> unique(pairs)
You want the duplicated function or more precisely its negation, ... and you need to sort within rows if yoy want (b,a) to look like (a,b).
, but that doesn't do anything... I guess because it considers A,B to be different from B,A. The data frame I would like to end up with should looklike this.
> pairs[!duplicated(t(apply(pairs, 1, sort))), ] Var1 Var2 1 A A 2 B A 3 C A 4 D A 6 B B 7 C B 8 D B 11 C C 12 D C 16 D DThe t( ) is needed to get the row-wise arrangement restore after apply transposed it.
[[alternative HTML version deleted]]
Nabble allows posting in plain text. You should.
PLease --->
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
-- David Winsemius, MD West Hartford, CT ______________________________________________ [email protected] 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.

