命名栅格堆栈中的图层并提取数据
Naming layers in a raster stack and extracting data
我有一个栅格 stack/brick 有 84 层,每一层对应于 1999 年 11 月到 2006 年 10 月一个月的降雨数据。我还有一个数据框,其中每一行包含(除其他外)空间年份和月份的坐标和值。
我想为数据框中的每一行提取降雨量值。为此,我需要使用年份和月份值 select 栅格堆栈中的相应图层,然后使用空间坐标 select 来自该图层的适当值。我的问题分为两部分:
1) 在我的数据框中,我将年和月列连接在一起,如下所示:
data$date <- paste0(data$year, data$month)
我现在只有一列值可以告诉我该数据点的时间,例如2001 年 7 月将是“20017”。我想以相同的方式命名光栅堆栈中的图层,即“199911”到“200610”。我可以输入所有 84 个这些,然后使用类似的东西:
names(rainfall) <- c("199911" ... "200610")
但一定有更有效的方法吗?
2) 完成此操作后,我将如何使用数据框中的日期列 select 栅格堆栈中的相应图层,然后使用空间坐标 select 位置?如果它是单层我可以使用:
data.sp <- data
coordinates(data.sp) <- ~ x + y
rain.points <- over(data.sp, rainfall)
data$rain <- (rain.points)
如有任何帮助,我们将不胜感激!
问题 1:做这样的事情
names(rainfall) <- paste0(rep(1999:2006, each=12), 1:12)[11:94]
问题 2:
你可以做到
pnt <- cbind(0,0)
s <- rainfall[["200111"]]
extract(s, pnt)
但您可能想做一些类似于讨论的事情 )
我有一个栅格 stack/brick 有 84 层,每一层对应于 1999 年 11 月到 2006 年 10 月一个月的降雨数据。我还有一个数据框,其中每一行包含(除其他外)空间年份和月份的坐标和值。
我想为数据框中的每一行提取降雨量值。为此,我需要使用年份和月份值 select 栅格堆栈中的相应图层,然后使用空间坐标 select 来自该图层的适当值。我的问题分为两部分:
1) 在我的数据框中,我将年和月列连接在一起,如下所示:
data$date <- paste0(data$year, data$month)
我现在只有一列值可以告诉我该数据点的时间,例如2001 年 7 月将是“20017”。我想以相同的方式命名光栅堆栈中的图层,即“199911”到“200610”。我可以输入所有 84 个这些,然后使用类似的东西:
names(rainfall) <- c("199911" ... "200610")
但一定有更有效的方法吗?
2) 完成此操作后,我将如何使用数据框中的日期列 select 栅格堆栈中的相应图层,然后使用空间坐标 select 位置?如果它是单层我可以使用:
data.sp <- data
coordinates(data.sp) <- ~ x + y
rain.points <- over(data.sp, rainfall)
data$rain <- (rain.points)
如有任何帮助,我们将不胜感激!
问题 1:做这样的事情
names(rainfall) <- paste0(rep(1999:2006, each=12), 1:12)[11:94]
问题 2:
你可以做到
pnt <- cbind(0,0)
s <- rainfall[["200111"]]
extract(s, pnt)
但您可能想做一些类似于讨论的事情