Viac

Pomocou pythonu a ArcPy na čítanie viacerých súborov použite funkciu a zapisujte do nového adresára

Pomocou pythonu a ArcPy na čítanie viacerých súborov použite funkciu a zapisujte do nového adresára


Python som zatiaľ nepoužil; Chcem prečítať viac súborov GeoTiff a prevziať ich z iného jediného súboru a byť schopný zapísať všetky súbory do nového adresára. Na to môžem použiť rastrový balík R, ale trvá to dlho. Tu je to, čo robím v R a chcem byť schopný urobiť presný proces v Pythone pomocou modulu ArcPy.

setwd ("cesta k adresáru") súbory <- list.files (path = ".", pattern = "tif", all.files = FALSE, full.names = TRUE) s <- zásobník (súbory) resamp <- raster ("new_raster.tif") s2 <- resample (s, resamp, method = 'bilinear') s3 <- unstack (s2) setwd ("new_directory) pre (i v seq_along (s3)) {writeRaster (s3 [[i ]], file = outputnames [i], format = "GTiff", options = c ("INTERLEAVE = BAND", "COMPRESS = NONE"))}

Tento proces zahŕňa vytvorenie zoznamu vašich rastrov a vytvorenie inštancie cyklu for na opätovné vzorkovanie každého rastra vo vašom zozname.

Skript v jazyku Python, ktorý používa metódy arcpy, by vyzeral NIEČO takto:

import arcpy arcpy.env.workspace =  outDir =  RstList = arcpy.ListRasters ("*", "TIFF") xResult = arcpy.GetRasterProperties („CELLSIZEX“) yResult = arcpy.GetRasterProperties (, "CELLSIZEY") x = xResult.getOutput (0) y = yResult.getOutput (0) pre Rst v RstList: arcpy.Resample_management (Rst, outDir + arcpy.Describe (Rst) .name, x y, "BILINEAR")

Pozri si video: Walk-through of your first Python script ArcGIS Pro