Using 'pyshp' I am hoping to reduce the set of US highway shapefiles to only those in Puerto Rico. The idea is very easy since I only need those pieces which fit into the window.
>> import shapefile >> sf = shapefile.Reader("roadl_usa") >> len(sf.records()) 193504
Not familiar with the writing object but hoping it's easy since I am not building from scratch. How do I select only those records in the bounding box
[-67.5, -65.0] and
[17.8, 18.6] and write a new shapefile?
What is the output like? I am wondering if
.dbs also get exported and what they mean.
This script almost works except it leads to
IndexError: list index out of range - maybe this is because I am deleting things in the process of iterating?
import shapefile e = shapefile.Editor("roadl_usa") prbbox = [-67.5, 17.8,-65.0, 18.6] L = len(e.shapes()) for t in range(L): if f( e.shape(t).bbox, prbbox) > 0: e.delete(t) e.save('pr-roads')