假设我们有2个类(A和B),每个类有2个样本,如下所示:
A A B B
1 2 3 4
我希望生成所有可能的唯一排列,其中新类组是旧类的混合,以计算新统计信息。在这种情况下,我们会得到:
A A B B
1 3 2 4
1 4 2 3
任何其他排列,当在A类和B类之间进行t检验(或ANOVA等)时,将得到与原始排序相同的结果,我不想要它。有没有一种简单的方法可以使用R
?
我可以想象生成原始索引向量的所有排列,在每个排列的样本类上执行split
,然后检查样本类的组合是否已经存在,如果没有更新排列列表,并进入下一个排列,依此类推等等。我只是想使用permute
包或R
中的其他包函数来检查是否有某种方法可以执行此操作。
答案 0 :(得分:1)
找到答案。 partitions
包有一些很棒的工具可用于处理这些类型的集合或分区
对于上面的示例,我们在两个分区中有两个项目,其中一个只是:
library(partitions)
listParts(c(2,2))
返回
listParts(c(2,2))
[[1]]
[1] (1,4)(2,3)
[[2]]
[1] (1,2)(3,4)
[[3]]
[1] (1,3)(2,4)