如何通过选择R中具有多个子集的子集的一个成员来获得排列?

时间:2019-01-21 18:30:36

标签: r matrix set combinations permutation

好吧,在R中,我想确定置换列表而不替换变量列表,但是对于其中一些变量,我只想使用每个子集中的一项。例如:

Set1: [a1, a2, a3]
Set2: [b1, b2, b3]
Set3: [c1, c2, c3]
Set4: [d1, d2, d3]
...

因此,我只想从每个集合(集合1-集合4+)中选择一个变量,并将它们与其他集合中的变量之一组合。结果如下:

results =

        Val1 Val2 Val3 Val4
perm1:  a1   b3   c2   d1
perm2:  a3   b1   c3   d2
perm3:  a2   b2   c1   d3

因此这是一个排列,其中每个插槽(Val1,Val2等)都有一个子组可供选择(Set1,Set2等)。那有意义吗?

我知道一些用于正常排列和组合的软件包(软件包gtools,combinat,permutations等),但是我很难找到可以处理这种子组结构的软件包或功能。重要的是要注意,我不想从同一集合中选择多个变量,每个集合只选择一个(因此,对于每个排列,只选择a1或a3,而不是两个)。

0 个答案:

没有答案