Я могу дать вам соответствующий подход, который все еще может быть полезным. Вместо этого вы можете найти, к какому пикселю относится каждая точка. Функции numpy.digitize
и scipy.stats.binned_statistic_2d
полезны здесь. scipy.stats.binned_statistic_2d
кажется немного неуклюжим, поскольку он делает больше, чем просто складывание ваших очков и требует от вас дать некоторые значения для каждого из ваших пунктов x, y.
Следует отметить, что нумерация бункеров начинается с 1
(не 0
).
x_p, y_p = np.digitize(X_random_points, xgrid), np.digitize(Y_random_points, xgrid)
# OR #
_, _, _, (x_p, y_p) = scipy.stats.binned_statistic_2d(X_random_points, Y_random_points, np.zeros(len(X_random_points)), bins=(xgrid, ygrid), expand_binnumbers=True)
Для определенного пикселя вы можете даже найти все точки, которые принадлежат этому пикселю из x_p
и y_p
.