我已经创建了一个函数,它接受矩阵作为它的两个输入。所以我要做的是创建一个两列的矩阵,或者列表,或者包含输入矩阵的所有组合的东西。
我尝试过combn()和expand.grid,但它们似乎都在输出中扩展了我的矩阵输入。这不是我需要的,因为我需要存储我的输入矩阵,以便稍后调用它们。
例如,我有:
a = c(1,2,3)
b = c(4,5,6)
c = c(7,8,9)
d = c(10,11,12)我想要一个显示如下内容的输出:
[a, b]
[a, c]
[a, d]
[b, c]
[b, d]
[c, d]请注意,我保留了原始矩阵,而不是比较矩阵中的内容。
发布于 2019-09-05 23:10:01
我们可以使用combn来做到这一点。使用mget将对象放入list,然后使用combn同时选择两个元素的组合
combn(mget(letters[1:4]), 2, simplify = FALSE)
#[[1]]
#[[1]]$a
#[1] 1 2 3
#[[1]]$b
#[1] 4 5 6
#[[2]]
#[[2]]$a
#[1] 1 2 3
#[[2]]$c
#[1] 7 8 9
#...https://stackoverflow.com/questions/57808368
复制相似问题