我正在尝试在自动地图包中使用autoKrige。我的数据看起来像
head(LL12)
Location Longitude Latitude percent
1 L1 16.48476 -28.60737 1.0000000
2 L3 16.90045 -29.24154 1.0000000
3 L4 16.99268 -28.44906 0.6363636
4 L5 17.06871 -29.67825 1.0000000
5 L6 17.09935 -29.00169 0.6000000
6 L7 17.25630 -28.82418 1.0000000
我正试图在南非地图上绘制这个。
首先,我在gstat中为kriging在R中创建网格之后获得了网格
SAgrd <- makegrid(SApol_border, n = 1000)
colnames(SAgrd) <- c('lon','lat')
SAgrd_pts <- SpatialPoints(coords = SAgrd,
proj4string=CRS(proj4string(SApol_border)))
SAgrd_pts_in <- SAgrd_pts[SApol_border, ]
plot(SAgrd_pts_in)
plot(SAgrd_pts_in)
然后我将其转换为空间像素数据帧
SAgrd_pts_in = as(SAgrd_pts_in,"SpatialPixelsDataFrame")
但是plo(SAgrd_pts_in)
给出了以下错误消息:
subset2(x,i,精确=精确)中出错:下标超出界限
当我想在自动克里格中使用以下行时,也会给出错误消息
krigLL12_fit <- autoKrige(percent~1, SA.grid, LL12spdf) # percent is the variable of interest in the spdf LL12spdf
错误信息:
自动克里格(percent ~ 1,SA.grid,LL12spdf)中出错:input_data或new_data在LongLat中,请重新投影。input _ data:proj = long lat ellps = WGS 84 tow GS 84 = 0,0,0,0,0,0 no_defs new_data: NA另外:警告消息:1:在proj4string(input_data)中:CRS对象有注释,在输出中丢失2:在proj4string(input_data)中:CRS对象有注释,在输出中丢失3:在showSRID(uprojargs,format = "PROJ ",multiline = "NO ")中:基于WGS 88丢弃的未知数据
我在这个话题上很新,不能意识到我需要做什么,或纠正什么,坐标单位在网格和数据文件中看起来是一样的。我还拟合了一个自动变异函数,并尝试在自动克里格中使用,但它也不起作用。thnx。
我发现了问题:将NA应用于crs所需的网格文件,然后将其转换为空间像素文件,而不是空间像素数据帧。