【发布时间】:2018-09-03 17:53:35
【问题描述】:
让我们考虑一个数组 [1,2,3],比如说,我想要生成的是包含对 [[1,2]、[1,3]、[2,3]] 的列表。这可以使用itertools 来完成。但是,我想使用纯 numpy 操作来生成它们,并且不允许循环或分支。
here 提供了一个接近的解决方案,但它会生成所有可能的配对,而不是像我这样的特定方式。
您能建议一种方法吗?数组永远是一维的。
另外,这是我关于 SE 的第一个问题。如果需要修改,请告诉我。
【问题讨论】:
-
一个稍微更一般的(对、三胞胎等)解决方案是here 它有一个循环,但在你的情况下,子集的大小固定为 2,这可以被消除。或者你可以使用
triu_indices。