R语言栅格数据处理_月数据(降水气温蒸散)合成年度数据
数据来源GEE平台
ERA5 DAILY
其中era5数据降水单位是M,转换为mm可在gee平台✖1000,气温K转换成摄氏度℃是➖273.15
代码随后补上
降水的年度数据是月平均的累加
温度的年度数据是一年12个月取平均


数据格式要求:年内数据中要有相同的字符,比如1970年中的月数据都包含1970

library("raster")
tifdir <- paste("F:/data/",tifnames,sep="")
tifnames <- list.files(path = "F:/data", pattern = '.tif$')
tifdir#每个tif文件的路径
tifnames#每个tif文件名
#思路,循环读取每一年内的栅格,栅格成块进行计算均值输出
for (i in 1970:1972) {
namefl=paste(i)
allrt <- lapply(tifdir[grep(pattern =namefl, tifnames)], raster)#
all <-brick(allrt)#读取成栅格块,这里是包含i(如1970)的所有栅格
m2<- calc(all,mean)#计算块内的均值,mean可以换成其他的比如sum或自定义
csvfile=paste(i,".tif",sep="")# name
flie=paste("F:/data/year/", csvfile ,sep = "")#path+name
writeRaster(m2,flie)#写出
print(csvfile)
}


run完一个数据集要清除,不然run下一个数据集会有影响
注:run完的数据空间参考会清除,可以定义投影