配对指数和计算总和的有效方法

时间:2015-06-24 21:41:41

标签: python numpy scipy combinations euclidean-distance

我有一个脚本可以读取坐标,创建所有可能的对并计算点之间的距离。如果距离在某些给定值之间,则将它们添加到numpy数组中。下面是长度为3.-3.5单位之间12点之间的对的示例。

[[  0.           3.           3.328008]
 [  0.           8.           3.128008]
 [  2.           5.           3.028007]
 [  2.           6.           3.028008]
 [  3.          10.           3.428008]
 [  4.           5.           3.128007]
 [  4.           9.           3.628008]
 [  6.           9.           3.128008]
 [  8.          11.           3.028007]
 [ 10.          11.           3.328007]]

我想创建所有点对,创建六对,每个点只能在一个组合中配对一次,并且距离的总和尽可能大。

这样做的唯一想法是可怕的,包括嵌套for循环的低效使用和列表的创建。我想为更大的一组点做这件事而且这个问题不能很好地扩展,所以我希望尽可能高效。实现这个目标的方法是什么?

0 个答案:

没有答案