【发布时间】:2019-06-23 11:13:00
【问题描述】:
我有一个大的栅格堆栈,我计算每两层的最大值。以下循环除了
日期。如何将日期保存到我的新堆栈中? (我假设我需要getZ,但我不知道如何实现它。)
谢谢
示例代码
m_date<-as.data.frame(as.Date(c('2009-05-01','2010-03-25','2007-06-14','2008-12-18','2016-05-20')))
m_r <- raster(matrix(1:60,3,4))
m_stack <- stack(m_r,m_r,m_r,m_r,m_r)
m_stack <- addLayer(m_stack,m_date)
new_stack<-m_stack[[1]]
new_stackk@z$Date<-m_stack@z$Date[[1]]
for (i in 1:5) {
# calculate max every two layers (works fine)
new_stack[[k]] <- calc(m_stack[[((i-1)*2 + 1):((i-1)*2 + 2)]], fun = max, na.rm = T)
# store the date for each one of the max layers (does not work)
new_stack@z$Date[[i]] <-m_stack@z$Date[[i]]
}
【问题讨论】: