我试图找到在http://prism.oregonstate.edu/发现从光栅网格(“BIL”文件)在南达科他州的县日平均温度。我是从“地图”包越来越县界。
library(maps)
library(raster)
sd_counties <- map('county','south dakota')
sd_raster <- raster('file_path')
我如何提取每个县中的网格单元?我想我需要把每一个县到它自己的多边形要做到这一点,但如何?然后,我应该能够做到像下面这样。任何帮助将不胜感激。
values <- extract(raster, list of polygons)
polygon_means <- unlist(lapply(values, FUN=mean))
我不熟悉的maps
包或map
功能,但它看起来就像是专为可视化,而不是地理空间操作的。
虽然有可能是将map
对象实际多边形转换的方式,这里有一个简单的方法唱raster
的getData
功能的工作原理:
library(raster)
usa_adm2 <- getData(country='USA',level=2)
sd_counties <- usa_adm2[grepl('South Dakota',usa_adm2$NAME_1),]
plot(sd_counties)
现在,您可以提取每个县使用extract(r,sd_counties)
,其中r
是你想要的栅格像素。
请注意,这取决于像素(和层)的数量,您需要提取,即可能需要一些时间。