【发布时间】:2014-05-24 17:33:30
【问题描述】:
假设我有两组点 X 和 Y 可能持有不同数量和不同维度的点。我们可以假设X 和Y 是n x m numpy 数组(n 个点,每个 m 维)
我想获得sum(y-x) 在Y 和X 中的点之间距离的分布(中位数和标准差)。
例如如果一个y 点是(2,4),一个x 点是(3,5),那么sum(y-x) 距离就是2-3 + 4-5 = -2。
如何在不循环的情况下在 Python 中做到这一点?
【问题讨论】:
-
如果你希望你的数组具有不同的维度,你不应该让它们都具有 n x m 的形状。最好把它说得更清楚。如下所述,广播是处理这类事情的默认方式,无需调用循环。但是,根据向量的长度,它创建的 3D 数组可能比您想要的要大。
标签: python numpy scipy scikit-learn