У меня есть 31 растр, сохраненный в виде файлов .asc, и шейп-файл многоугольника, сохраненный в формате .shp.
Пример растра:
Я хочу просмотреть каждый растр, обрезать его (как показано ниже) и сохранить в другой папке.
Обрезанный растр
Я попытался найти код, найденный в этой теме, который был сочтен неправильным / неокончательным:
Прокручивать файлы клипа и экспортировать в новую папку
Вот что я попробовал:
## location of input files
ipath <- "G:/GIS/RRB_PROJECT/SDM_RASTERS/BRT_OUTPUTS/RCP26_CCSM4_2050/"
## location of output files
opath<-
"G:/GIS/RRB_PROJECT/SDM_RASTERS/BRT_OUTPUTS_CLIPPED/RCP26_CCSM4_2050/"
## location of polygon shapefile
ppath <- "G:/GIS/RRB_PROJECT"
## polygon name
pname <- "DSREACH_RCLIP"
## polygon
bound <- readOGR(ppath,pname)
## list of files
files <- list.files(ipath, pattern= '[.]asc$')
stopifnot(length(files)>0)
## loop (doesnt work)
for (i in files) {
ifile <- file.path(ipath,i)
ofile <- file.path(opath,i)
r <- mask(ifile, bound)
writeRaster(r, filename = ofile)
}
но я получаю эту ошибку:
Ошибка в (функция (классы, fdef, mtable): невозможно найти
унаследованный метод для функции «маска» для подписи «символ»,
"SpatialPolygonsDataFrame"»
Любая помощь очень ценится.