Выполнить вычисления в каждом файле в пути с циклом? - PullRequest
0 голосов
/ 04 июля 2018

У меня есть код, который находит каждый файл в каталоге с определенным расширением:

и я хочу, чтобы этот скрипт применялся к каждому shp:

import geopandas as gpd
pst = gpd.read_file(r'C:\Users\user\Desktop\New folder1\PST')#this is not needed in the final because it takes the path by it self
dbound = gpd.read_file(r'C:\Users\user\Desktop\New folder1\DBOUND')#same here
dbound.reset_index(inplace=True)
dbound = dbound.rename(columns={'index': 'fid'})
wdp = gpd.sjoin(pst, dbound, how="inner", op='within')#each dbound and pst from every subfolder
wdp['DEC_ID']=wdp['fid']

это список, содержащий пути к шейп-файлам:

grouped_shapefiles с этими шейп-файлами:

[['C:\\Users\\user\\Desktop\\eff\\20194\\DBOUND\\DBOUND.shp',
  'C:\\Users\\user\\Desktop\\eff\\20194\\PST\\PST.shp'],
 ['C:\\Users\\user\\Desktop\\eff\\20042\\DBOUND\\DBOUND.shp',
  'C:\\Users\\user\\Desktop\\eff\\20042\\PST\\PST.shp'],
 ['C:\\Users\\user\\Desktop\\eff\\20161\\DBOUND\\DBOUND.shp',
  'C:\\Users\\user\\Desktop\\eff\\20161\\PST\\PST.shp'],
 ['C:\\Users\\user\\Desktop\\eff\\20029\\DBOUND\\DBOUND.shp',
  'C:\\Users\\user\\Desktop\\eff\\20029\\PST\\PST.shp'],
 ['C:\\Users\\user\\Desktop\\eff\\20008\\DBOUND\\DBOUND.shp',
  'C:\\Users\\user\\Desktop\\eff\\20008\\PST\\PST.shp']]

и я хочу что-то вроде этого:

results = []
for group in grouped_shapefiles:

#here applies the script where i need help to connect in the loop
#and then the export process- the line that follows
#o=a path
out = o +'\result.shp'#here it would be nice to add to the name in the output the name of its folder so it would be unique 
data2.to_file(out)

Как я могу это сделать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...