使用尺寸和分辨率略有不同的栅格进行计算
calculations with rasters that are a bit different in dimensions and resolution
我想将两个光栅(在 R 中)相乘,但它们并不完全匹配。我有哪些选项可以乘以栅格?
> veg_g
class : RasterLayer
dimensions : 2416, 2807, 6781712 (nrow, ncol, ncell)
resolution : 0.25, 0.25 (x, y)
extent : 109067.2, 109769, 533016.5, 533620.5 (xmin, xmax, ymin, ymax)
crs : +proj=sterea +lat_0=52.1561605555556 +lon_0=5.38763888888889 +k=0.9999079 +x_0=155000 +y_0=463000 +ellps=bessel +units=m +no_defs
source : memory
names : layer
values : 0, 1 (min, max)
> garden_5mplus
class : RasterLayer
dimensions : 2416, 2804, 6774464 (nrow, ncol, ncell)
resolution : 0.2502728, 0.2500402 (x, y)
extent : 109067.3, 109769.1, 533016.4, 533620.5 (xmin, xmax, ymin, ymax)
crs : +proj=sterea +lat_0=52.1561605555556 +lon_0=5.38763888888889 +k=0.9999079 +x_0=155000 +y_0=463000 +ellps=bessel +units=m +no_defs
source : memory
names : BBOXrs_rAHN3_05m_DSM
values : 0, 1 (min, max)
您可以使用 resample()
:
将它们转换为相同的分辨率
require("raster")
garden_5mplus <- resample(garden_5mplus, veg_g)
raster
的后继包terra
中也有一个resample()
函数。
我想将两个光栅(在 R 中)相乘,但它们并不完全匹配。我有哪些选项可以乘以栅格?
> veg_g
class : RasterLayer
dimensions : 2416, 2807, 6781712 (nrow, ncol, ncell)
resolution : 0.25, 0.25 (x, y)
extent : 109067.2, 109769, 533016.5, 533620.5 (xmin, xmax, ymin, ymax)
crs : +proj=sterea +lat_0=52.1561605555556 +lon_0=5.38763888888889 +k=0.9999079 +x_0=155000 +y_0=463000 +ellps=bessel +units=m +no_defs
source : memory
names : layer
values : 0, 1 (min, max)
> garden_5mplus
class : RasterLayer
dimensions : 2416, 2804, 6774464 (nrow, ncol, ncell)
resolution : 0.2502728, 0.2500402 (x, y)
extent : 109067.3, 109769.1, 533016.4, 533620.5 (xmin, xmax, ymin, ymax)
crs : +proj=sterea +lat_0=52.1561605555556 +lon_0=5.38763888888889 +k=0.9999079 +x_0=155000 +y_0=463000 +ellps=bessel +units=m +no_defs
source : memory
names : BBOXrs_rAHN3_05m_DSM
values : 0, 1 (min, max)
您可以使用 resample()
:
require("raster")
garden_5mplus <- resample(garden_5mplus, veg_g)
raster
的后继包terra
中也有一个resample()
函数。