假设我有一个 20 X 5 矩阵,我想选择矩阵的子集并用它们进行一些计算。进一步假设每个子矩阵是 7 X 5。我当然可以
ncomb <- combn(20, 7)
这给了我 7 个行索引的所有可能组合,我可以使用这些来获得子矩阵。但是对于一个小的 20 X 5 矩阵,已经有 77520 种可能的组合。所以我想随机抽取一些组合,例如其中的 5000 个。
一种可能性如下:
ncomb <- combn(20, 7)
ncombsub <- ncomb[, sample(77520, 5000)]
也就是说,我得到了所有可能的组合,然后随机选择了5000个组合。但我想,如果我有一个更大的矩阵——比如 100 X 7,计算所有可能的组合会有问题。
所以我想知道是否有一种方法可以在不首先获得所有可能组合的情况下获得组合子集。