0

我不明白下面的代码,即它的最后一部分。

max = np.max(rel_coords, axis=0)
min = np.min(rel_coords, axis=0)
bins = [np.arange(low, high) for low, high in zip(min, max)]

new_coord = np.array(np.meshgrid(*bins)).T
coord_norms = norm(new_coord, axis=-1).round().astype(int)
bin_count = np.bincount(coord_norms.flatten())
new_count = bin_count[coord_norms]

有人可以解释我如何使用二维数组(coord_norms)索引一维数组(bin_count)吗?我确实了解 numpy 广播和高级索引,但想了解在这种情况下幕后发生的事情。bin_count 是否首先被广播为与 coord_norms 相同的形状?Python 如何分配 new_data 中的值?

4

0 回答 0