![](/img/trans.png)
[英]How to subset (classify ) raster based on another raster grid cells values?
[英]How to dowscale a raster but keeping the same values?
如果我有這個分辨率為 40 x 40 的柵格。
library(raster)
#get some sample data
data(meuse.grid)
gridded(meuse.grid) <- ~x+y
meuse.raster <- raster(meuse.grid)
res(meuse.raster)
#[1] 40 40
我想將此柵格縮小到 4 x 4。如果 40x40 = 125 的像素,則對該像素內的所有 4x4x 像素使用相同的值。
只需將 40 x40 的每個像素分成 4x4 並保持其值。
我也對 CDO 解決方案持開放態度。
我們可以使用raster::disaggregate
library(raster)
#get some sample data
data(meuse.grid)
gridded(meuse.grid) <- ~x+y
meuse.raster <- raster(meuse.grid)
#assign geographic coordinate system (from coordinates and location (Meuse) it seems like the standard projection for the Netherlands (Amersfoort, ESPG:28992)
crs(meuse.raster) <- "EPSG:28992"
#disaggregate
meuse.raster.dissaggregated <- disaggregate(meuse.raster, c(10,10))
我使用 c(10,10) 將分辨率從 40x40 分解到 4x4 (細節的 10 倍)。
res(meuse.raster.dissaggregated)
[1] 4 4
在評論中,克里斯提到了terra
package。 我還建議從raster
轉移到terra
。 我相信它是最新的 package 並最終會取代像raster
和stars
這樣的包。
terra
也有一個分解 function terra::disagg()
以類似的方式工作。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.