wrld_simpl中的Nas不可能

时间:2019-03-18 16:23:19

标签: r raster

当我基于wrld_simpl(或来自worldclim的任何其他环境层)创建世界陆地栅格时,总是看起来是陆地上的一些“不可能” NA。为什么会这样?我需要一个完美的世界面具,以摘录未落入海洋的记录。但是,陆地上有很多记录,仍然被认为是不适用。

我的脚本如下:

require(raster)
require(maptools)
data(wrld_simpl)
x=read.csv("https://www.dropbox.com/s/ncvu64r2fxgfd4e/NAlocations.csv?dl=0")
r=raster(ncols=360,nrows=(180))
extent(r)=extent(wrld_simpl)
r=rasterize(wrld_simpl,r,wrld_simpl$AREA)
plot(r)
x=x[-which(is.na(extract(r,x$lon,x$lat))),]# This should eliminate all locations on land.
points(x$lon,x$lat, col="red", cex=.3)            

那怎么可能?并为世界土地创建干净的栅格吗?

1 个答案:

答案 0 :(得分:1)

来自保管箱的直接read.csv对我不起作用。 如果我这样做

z <- extract(r, x)
# NOT z <- extract(r, x[,1], x[,2]) !!! 

i <- which(is.na(z))
points(x[i,])

我在莫桑比克海岸的水中看到很多点。