count points where is within the polygons using shapely and fiona
Xristos Xristoou
saxri89 at gmail.com
Sun Jan 29 14:42:47 EST 2017
i tried to count points from the point shapefile where is within in the polygon shapefile but i fail.Maybe my code is complete wrong but i tried.
any idea how to fix my code ?
i want fast method because i have big data features
from shapely.geometry import shape
import fiona
filepath1 = "point.shp"
file1features = []
intersectfeatures_file1 = []
intersectfeatures_file2 = []
count =0
count=count+1
outschema = None
with fiona.collection(filepath1, "r") as input1:
outschema = input1.schema.copy()
for p1 in input1:
file1features.append(p1)
filepath2 = "polygon.shp"
with fiona.collection(filepath2, "r") as input2:
for p2 in input2:
for p1 in file1features:
[count for i in [shape(p1['geometry']).within(shape(p2['geometry']))]]
if p1 not in intersectfeatures_file1:
intersectfeatures_file1.append(p1)
if p2 not in intersectfeatures_file2:
intersectfeatures_file2.append(p2)
print count
'''
if intersectfeatures_file1:
outfile = "outputfile1.shp"
with fiona.collection(outfile, "w", "ESRI Shapefile", outschema) as output:
for outfeature in intersectfeatures:
output.write(outfeature)
if intersectfeatures_file2:
outfile = "outputfile2.shp"
with fiona.collection(outfile, "w", "ESRI Shapefile", outschema) as output:
for outfeature in intersectfeatures:
output.write(outfeature)
'''
on the print count i take 20 times the number 1. after for this count i want to export to new shapefile the polygons where have specific number of points. thnx
More information about the Python-list
mailing list