我有一个多维数组,其中有 100 万组 3 个点,每个点都是由 x 和 y 指定的坐标。调用这个数组pointVec,我的意思是np.shape(pointVec) = (1000000,3,2)我想找到这组 3 个点中每个点的中心。一种明显的方法是迭代所有 100 万个集合,在每次迭代时找到每个集合的中心。然而,我听说矢量化是 Numpy 的强项,所以我正在尝试使其适应这个问题。由于这个问题非常直观地适合迭代,因此我不知道如何使用矢量化来解决这个问题,或者使用矢量化是否有用。
1 回答
萧十郎
TA贡献1815条经验 获得超13个赞
这取决于您如何定义三点中心。但是,如果是平均坐标,就像评论中提到的@Quang,您可以沿numpy中的特定轴取平均值:
pointVec.mean(1)
这将沿 axis=1(这是具有 3 个点的第二个轴)取平均值并返回 (1000000,2) 形状的数组。
添加回答
举报
0/150
提交
取消