【发布时间】:2018-07-23 03:50:10
【问题描述】:
我在一个文件夹中合并了 28 个栅格文件。我想做 3 个第一个栅格的平均值,然后是其他 3 个栅格的平均值,等等。然后,我应该获得 9 个栅格。我想按月份命名它们。我希望我的第一个栅格图层命名为 Tmin-2010-01-15,我的第二个栅格图层命名为“Tmin-2010-02-15”,...,最后一个和九个栅格图层命名为“Tmin-2010-09-15” '。我写了下面的代码。我没有任何错误信息但我看不到任何结果所以我不知道代码的逻辑是否良好以及如何处理。
感谢您的帮助!
setwd("/Users/lisemontefiore/Documents/Data/Climate Data/test2")
我堆叠了我的栅格
bands <-list.files(path="xxx",pattern="*.tif",full.names=TRUE)
data_stack <- stack(bands)
我定义了参数 n=栅格层数,m=我想要收集的栅格数来做平均值
n<- 28
m<-3
groupn=function(n,m){rep(1:m,rep(n/m,m))}
group3=groupn(28, 3)
f=function(v){tapply(v, group3, mean)}
b=calc(data_stack, f)
我定义了由函数创建的文件的名称并编写栅格
months<- seq(from=as.Date("2010-01-15"),
to= as.Date("2010-09-15"),
by='month')
for (i in seq_along(months))
{writeRaster <- file.path("b",
paste('Tmin',months[i], sep=''),
"GTiff")
【问题讨论】: