利用pyshp包給shapefile檔案新增欄位的例項
阿新 • • 發佈:2020-01-09
在已有的shapefile檔案的基礎上增加欄位:
# -*- coding:gb2312 -*- import shapefile r=shapefile.Reader(r"C:\Users\skfzh\Documents\python地理空間分析指南\第五章\5.5.4\output\NYC_MUSEUMS_UTM") w=shapefile.Writer(r"C:\Users\skfzh\Documents\python地理空間分析指南\第五章\5.5.4\output\NYC_MUSEUMS_UTM_update",shapeType=r.shapeType) w.fields=list(r.fields) #新增加兩個欄位 w.field("LAT","F",8,5) w.field("LON",5) #將另外一個檔案中的座標點的資訊存入新增加的兩個欄位 geo=shapefile.Reader(r"C:\Users\skfzh\Documents\python地理空間分析指南\第五章\5.5.4\NYC_MUSEUMS_GEO\NYC_MUSEUMS_GEO") i=0 for rec in r.iterShapeRecords(): ls=rec.record lon,lat=geo.shape(i).points[0] #可以再此處增加判斷語句,限制i的大小。防止增加的欄位數目不匹配問題 # print(geo.shape(i).points) ls.extend([lat,lon]) # print(ls) w.record(*ls) w.shape(rec.shape) i+=1 w.close()
以上這篇利用pyshp包給shapefile檔案新增欄位的例項就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。