2013-11-15 5 views
9

ベクトルxを持つと仮定し、可能なすべての行列を作成したいと考えています。xの要素の2つの組み合わせを選択します。すべての可能なnを生成するRのベクトルから2つのペアを効率的かつ高速に選択する

より詳細には、

X = as.matrix(data.frame(col1 = c(1,1,1,2,2,3), col2 = c(2,3,4,3,4,4))) 

がそれを行うためのR関数があり、その後
x = c(1,2,3,4) 

、すべての可能性= 6(4は2を選択)、私たちは、xがあるとしましょう? @Arunによって指摘

+3

combnは '?combn'を見てください使用することができます。 – Arun

+0

その他のソリューション:https://stackoverflow.com/questions/26828301/faster-version-of-combn – akraf

答えて

15

として、あなたは

> t(combn(x, 2)) 
    [,1] [,2] 
[1,] 1 2 
[2,] 1 3 
[3,] 1 4 
[4,] 2 3 
[5,] 2 4 
[6,] 3 4 
関連する問題