パッケージのextract
関数を使用して、シェープファイルで定義された領域を使用してラスター ファイルからデータを抽出しています。raster
ただし、このプロセスが現在必要とするメモリの量に問題があります。多数のシェープファイル (~1000) があります。ラスター ファイルが大きい (~1.6 GB)
私のプロセスは次のとおりです。
shp <- mclapply(list.files(pattern="*.shp",full.names=TRUE), readShapePoly,mc.cores=6)
ndvi <- raster("NDVI.dat")
mc<- function(y) {
temp <- gUnionCascaded(y)
extract <- extract(ndvi,temp)
mean <- range(extract, na.rm=T )[1:2]
leng <- length(output)
}
output <- lapply(shp, mc)
メモリ負荷を減らすためにできる変更はありますか? メモリが再び急増する前に、約 5 分間機能する少数のシェープファイルをロードしようとしました。8GB RAMを搭載した2.4GHzのクアッドコアコンピューター