我有3652张pcraster地图堆栈类型的日降水量。
pptn0000.001
pptn0000.002
...
pptn0003.652我知道有一个pcrcalc命令,但是我缺少对这种类型的地图进行数学操作的例子。我如何在python中平均这些映射,并将一个光栅映射作为输出?谢谢
发布于 2016-03-11 21:21:31
我这么做是为了获得TRMM任务(17年,1998-2014年)的“气候降水”。Python可以使用pcraster库直接读取光栅映射。例如:
import os
import fnmatch
import subprocess
from os import listdir
from pcraster import *
PrecDaily = '/home/someData/precipitation/pptn'
OutSave = '/home/someData/precipitation/pptn/meanMap'
TypeFile = 'pptn????.???'
os.chdir(PrecDaily)
PrecDailyFiles = []
for iListFile in sorted(os.listdir('.')):
if fnmatch.fnmatch(iListFile, TypeFile):
PrecDailyFiles.append(iListFile)
n=len(PrecDailyFiles)
FirstRasterMap = readmap(PrecDailyFiles[0])
SUM = FirstRasterMap
for iMeanRaster in xrange(1, n):
PCRasterMap = readmap(PrecDailyFiles[iMeanRaster])
SUM = SUM + PCRasterMap
MEAN = SUM/n
os.chdir(OutSave)
report(MEAN, 'pptn_mean.map')https://stackoverflow.com/questions/35849562
复制相似问题