Tengo dos rásteres de diferente resolución y extensión:
> res(Elevation)
[1] 0.002083333 0.002083333
> res(Ann_precip)
[1] 0.008333333 0.008333333
> extent(Elevation)
class : Extent
xmin : -15.07722
xmax : -7.641806
ymin : 7.193611
ymax : 12.67694
> extent(Ann_precip)
class : Extent
xmin : -15.075
xmax : -7.641667
ymin : 7.191667
ymax : 12.675
Mi pregunta es , para que estos dos rásteres tengan resoluciones y extensiones coincidentes, es mejor:
A) usa la raster::aggregate
función
> 0.008333333/0.002083333
[1] 4
Elevation_res<-aggregate(Elevation, fact=4, fun=mean)
y la raster::extend
función
Elevation_res<-extend(Elevation_res, Ann_precip, values=NA)
(aunque aquí todavía obtengo extensiones y resoluciones diferentes pero muy similares):
> res(Elevation_res)
[1] 0.008333333 0.008333333
> res(Ann_precip)
[1] 0.008333333 0.008333333
> res(Elevation_res)==res(Ann_precip)
[1] FALSE FALSE
> extent(Elevation_res)
class : Extent
xmin : -15.07722
xmax : -7.635556
ymin : 7.193611
ymax : 12.67694
> extent(Ann_precip)
class : Extent
xmin : -15.075
xmax : -7.641667
ymin : 7.191667
ymax : 12.675
o
b) usa la raster::resample
función
Elevation_res<-resample(Elevation, Ann_precip, method="bilinear")
> res(Elevation_res)==res(Ann_precip)
[1] TRUE TRUE
> extent(Elevation_res)==extent(Ann_precip)
[1] TRUE
Pregunto esto porque he leído en Wegmann et al (2016) (p110) (si lo entiendo correctamente) que el remuestreo afecta en gran medida los valores de píxeles, y eso aggregate()
, extend()
y crop()
debería usarse en su lugar. Dado que las diferencias en resolución y extensión son bastante pequeñas en mi caso, ¿puedo suponer que el sesgo creado por el remuestreo sería mínimo aquí?
fuente
bilinear
opción equivalente amean
como la función paraaggregate
y langb
opción equivalente amodal
? Me refiero a casos en los que el objetivo es una resolución más gruesa (mayor tamaño de píxel) que la entrada que necesita ser transformada.