我想在R中获得以下打印输出:
1,2,3
1,2,4
1,3,4
2,1,3
2,1,4
2,3,4
3,1,2
3,1,4
3,2,4
4,1,2
4,1,3
4,2,3
类似的东西:
for (main in 1:4){
for (i in 1:4) {
if (i != main){
for (j in 1:4){
if (j != main & j != i){print main,i,j}}}}}
我想将上述12个结果放入向量中。谢谢。
答案 0 :(得分:4)
Reduce(rbind,
lapply(1:4, function(i){
t(rbind(i, combn((1:4)[-i], 2)))
})
)
#> i
#> [1,] 1 2 3
#> [2,] 1 2 4
#> [3,] 1 3 4
#> [4,] 2 1 3
#> [5,] 2 1 4
#> [6,] 2 3 4
#> [7,] 3 1 2
#> [8,] 3 1 4
#> [9,] 3 2 4
#> [10,] 4 1 2
#> [11,] 4 1 3
#> [12,] 4 2 3