【问题标题】:Problem using terra::extract results present nan value使用 terra::extract 结果存在问题 nan 值
【发布时间】:2022-01-28 01:50:12
【问题描述】:

我想从栅格中提取值到点。我正在使用 terra 和 extract() 函数。 该脚本有效,但我注意到对于某些行(大约 100 行),提取函数的结果是值“nan”。 没有点在栅格之外。我也有这个问题,还添加了 na.rm=T 选项。 如果我尝试使用示例 qgis 执行相同的操作,我没有这个问题。 这怎么可能?有人遇到过这个问题吗?

【问题讨论】:

标签: r raster r-raster terra


【解决方案1】:

首先在栅格 (SpatRaster x) 上绘制点 (SpatVector y)

plot(x)
points(y)

如果这看起来不太好,你可能应该这样做

y <- project(y, crs(x))

(也许 QGIS 会为你做到这一点?)

否则,要找出发生这种情况的位置,您可以选择这些点,可能像这样:

e <- extract(x, y, xy=TRUE)
yna <- y[is.na(e[,names(x)[1]]), ]
plot(x)
points(yna) 

现在放大到这些点中的一个或多个

zoom(x) # click twice on the map
points(yna) 

您可以使用writeVector(yna, "points.shp") 将这些点保存到磁盘,以便再次与 QGIS 进行比较。

顺便说一句,extract 没有参数na.rm(请参阅?extract

【讨论】:

    猜你喜欢
    • 2021-05-30
    • 2021-09-11
    • 1970-01-01
    • 1970-01-01
    • 2021-12-14
    • 1970-01-01
    • 1970-01-01
    • 2018-07-26
    • 2011-10-09
    相关资源
    最近更新 更多