Saya memiliki dua raster resolusi dan tingkat yang berbeda:
> 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
Pertanyaan saya adalah , agar kedua raster ini memiliki resolusi dan luasan yang cocok, apakah lebih baik untuk:
A) gunakan raster::aggregate
fungsinya
> 0.008333333/0.002083333
[1] 4
Elevation_res<-aggregate(Elevation, fact=4, fun=mean)
dan raster::extend
fungsinya
Elevation_res<-extend(Elevation_res, Ann_precip, values=NA)
(walaupun di sini saya masih mendapatkan perbedaan dan resolusi yang sangat mirip):
> 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
atau
b) gunakan raster::resample
fungsinya
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
Saya bertanya ini karena saya sudah membaca di Wegmann et al (2016) (p110) (jika saya mengerti benar) bahwa resampling sangat mempengaruhi nilai piksel, dan itu aggregate()
, extend()
dan crop()
harus digunakan sebagai gantinya. Karena perbedaan dalam resolusi dan luasnya cukup kecil dalam kasus saya, dapatkah saya berasumsi bahwa bias yang diciptakan oleh resampling akan minimal di sini?
sumber
bilinear
opsi setara denganmean
sebagai fungsi untukaggregate
danngb
opsi setara denganmodal
? Saya merujuk pada kasus-kasus di mana targetnya adalah resolusi kasar (ukuran piksel lebih besar) daripada input yang perlu diubah.