【发布时间】:2016-04-19 23:53:59
【问题描述】:
我有一个 84 层的栅格堆栈/砖,每一层对应于 1999 年 11 月至 2006 年 10 月的一个月降雨数据。我还有一个数据框,其中每一行包含(除其他外)空间坐标和值年和月。
我想为数据框中的每一行提取降雨量值。为此,我需要使用年份和月份值来选择栅格堆栈中的相应图层,然后使用空间坐标从该图层中选择适当的值。我的问题分为两部分:
1) 在我的数据框中,我将年份和月份列连接在一起,如下所示:
data$date <- paste0(data$year, data$month)
我现在有一列值告诉我该数据点的时间,例如2001 年 7 月将是“20017”。我想以相同的方式命名我的栅格堆栈中的图层,即“199911”到“200610”。我可以输入所有 84 个这些,然后使用类似的内容:
names(rainfall) <- c("199911" ... "200610")
但一定有更有效的方法吗?
2) 完成此操作后,我将如何使用数据框中的日期列从我的栅格堆栈中选择相应的图层,然后使用空间坐标来选择位置?如果是单层,我可以使用:
data.sp <- data
coordinates(data.sp) <- ~ x + y
rain.points <- over(data.sp, rainfall)
data$rain <- (rain.points)
任何帮助将不胜感激!
【问题讨论】: