[英]How to use multiple extract methods for raster NA values
我對 r 和編碼很陌生,我很感激任何幫助。
我有兩個數據集:一個帶有度數加熱周的柵格對象(累積海面溫度的遙感測量)。 一組坐標記錄發生珊瑚白化的地方。
我已經使用以下raster::extract(mydata, coords, method="simple")
成功提取了每個坐標處的 DHW 值: raster::extract(mydata, coords, method="simple")
但是,有許多 NA 值。 我相信這是因為許多坐標靠近海岸並且主要占據填埋的像素。
我想使用methods="bilinear"
為 NA 單元插入值,為非 NA 單元插入methods="simple"
。 我希望輸出是一個對象。
我寫了以下函數:
if(is.na(dhw_raster[])){
raster::extract(dhw_raster, coords, method="bilinear")
} else {
raster::extract(dhw_raster, coords, method="simple")
}
}````
However, it returns only the method="simple" values, and this warning:
In if (is.na(dhw_raster[])) { :
the condition has length > 1 and only the first element will be used
Any advice would be great :)
你可能可以做這樣的事情
x <- raster::extract(mydata, coords, method="simple")
y <- raster::extract(mydata, coords, method="bilinear")
現在用y
的值替換x
的缺失值(然后使用x
)
i <- is.na(x)
x[i] <- y[i]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.