通常,我们需要将多个栅格求平均,例如,将一年中每个月的NDVI值加起来除以12,就会等到月均NDVI,该过程虽然在栅格计算器中可以实现,但是当时间序列较长时就比较费事,此时,python代码是不二的选择。
下图所示为栅格数据相加的原理图,也就是对应的栅格相加,生成新的栅格数据。求均值是需要再除以栅格个数。
在独立脚本中编写如下代码:
python求均值代码友情赠送:
import arcpy
from arcpy.sa import *
arcpy.CheckOutExtension("spatial")
arcpy.gp.overwriteOutput=1
#custom
arcpy.env.workspace="G:\\Phenology of 30 Years\\GIMMS 3g\\15Length\\1Length\\"
#custom
outpath="G:\\Phenology of 30 Years\\GIMMS 3g\\15Length\\2mean_len\\"
#custom
outfilename="mean";n=30;
Sum=0
files=arcpy.ListRasters()
for file in files:
Sum=Sum+Raster(file)
(Sum/n).save(outpath+outfilename)
print("Done,please close")
来源:oschina
链接:https://my.oschina.net/u/4330928/blog/4700642