For循环中区域统计中的多个Raster



我正在为我的Python初学者类做一个项目,有点卡住了。我有三个.tif文件,我想为它们做区域统计,但我遇到了一个错误。这是我的脚本:

import arcpy
import os
from arcpy import env
from arcpy.sa import *
env.workspace = r'C:UsersalvaremiDocumentsFinal Project_Python'
path = r'C:UsersalvaremiDocumentsFinal Project_Pythonn'
env.overwriteOutput = 1
arcpy.CheckOutExtension('Spatial')
in_zone_data = 'counties_in_cog.shp'
zone_field = 'NAME'
impervious = os.listdir(env.workspace + 'ImpvClipped')
print impervious
for year in impervious:
  if year.endswith(".tif"):
    outZonalStatistics = ZonalStatistics(in_zone_data, zone_field, year, "MEAN", "NODATA")
    outZonalStatistics.save(year[:8] + 'zonalstats')
print 'Done'

当我运行它时,我会得到以下错误:ExecuteError:无法执行。参数无效。错误000865:输入值raster:2001impvclipped.tif不存在。未能执行(ZonalStatistics)。

我也不确定如何保存新文件,以便它们保留日期。我想运行Zonal Stats的文件是"2001impclipped"、"2006impclippet"one_answers"2011impclippe"。

谢谢!

您需要将完整的目录路径添加到文件名中,以便Python找到它。

fileName = env.workspace + 'ImpvClipped' + year
ZonalStatistics(in_zone_data, zone_field, fileName, "MEAN", "NODATA")

最新更新