![](/img/trans.png)
[英]loop error in converting shapefiles to raster for entire folder set
[英]How to create a loop/function to open set of shapefiles?
如何创建一个循环或 function 以同时打开许多 shapefile,其中 shapefile 的名称变化很小?
例如,使用以下数据:
a = ("05", "11", "12")
b = ("agglome_a", "piste_c_l", "route_l", "vegetat_a", "batimen_a","route_a_l")
agglo5 = gpd.read_file(f"/content/drive/MyDrive/python/bndt/031H{a[0]}_{b[0]}.shp")
agglo11 = gpd.read_file(f"/content/drive/MyDrive/python/bndt/031H{a[1]}_{b[0]}.shp")
agglo12 = gpd.read_file(f"/content/drive/MyDrive/python/bndt/031H{a[2]}_{b[0]}.shp")
pistec5 = gpd.read_file(f"/content/drive/MyDrive/python/bndt/031H{a[0]}_{b[1]}.shp")
pistec11 = gpd.read_file(f"/content/drive/MyDrive/python/bndt/031H{a[1]}_{b[1]}.shp")
pistec12 = gpd.read_file(f"/content/drive/MyDrive/python/bndt/031H{a[2]}_{b[1]}.shp")
我会想象 function 是这样开始的:
for i in a:
agglo05 = gpd.read_file(f"/content/drive/MyDrive/python/bndt/031H{i[0:]}_{b[0]}.dbf"
但理想情况下,添加一个结果将确定一个新的 dataframe。本质上,我希望 function 打开所有 shapefile 并为它们命名(例如 agglo5、agglo11、...)。
我没试过,但这可能会为您指明正确的方向?
import os
directory = 'files'
for filename in os.listdir(directory):
do something with gpd.read_file(filename)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.