How can I simplify this for loop with a list comprehension and get more speed?
import numpy as np
import shapely
#buffer_original_points --> shapely polygons in a list
#raster --> shapely polygons in a list
raster_array = np.zeros((len(raster)))
for i in range(0, len(buffer_original_points)):
for j in range(0, len(raster)):
if buffer_original_points[i].intersects(raster[j]) or raster[j].contains(buffer_original_points[i]):
raster_array[j] += 1
raster_array = raster_array.reshape(rows, columns)
I tried this, but the raster_array result was wrong and is filled with ones:
raster_array=[raster_array[j]+1 for i in range(0, len(buffer_original_points)) for j in range(0, len(raster)) if (buffer_original_points[i].intersects(raster[j]) or raster[j].contains(buffer_original_points[i]))]