Бих искал да обединя полигонални данни и растерни данни в един кадър с данни за целите на след това да използвам пакета randomForests в R.
Това включва първо извличане на средната растерна стойност за полигон.
До момента имам следното:
#load libraries
library(raster)
library(rgdal)
library(sp)
library(maptools)
#import raster data
r <- raster("myRasterdata.tif")
#import polygon data
p <- readShapePoly("myPolydata.shp")
#extract mean raster value for each polygon
ExtractMyData <- extract(r, p, small=TRUE, fun=mean, na.rm=TRUE, df=FALSE, nl=1, sp=TRUE)
# note I have also tried this with df=TRUE and sp=FALSE
Резултатът е матрица, която мога да запиша в рамка с данни. Но той няма пространствените координати или оригиналните идентификатори на полигони, така че не знам как да обединя изхода в същата база данни. Мислех, че аргументът sp=TRUE ще направи това, но изглежда не работи.
Обърнете внимание, че всъщност ще трябва да конвертирам полигоните в точки (използвайки метод на центроид?) за целите на RandomForests, така че мога да предположа, че наистина искам да обединя средните растерни стойности, свързани с точки, а не с полигони.
Всички предложения ще бъдат много оценени. Благодаря ти!!