自动克里金法和 SpatialPixel 网格文件

Posted

技术标签:

【中文标题】自动克里金法和 SpatialPixel 网格文件【英文标题】:autokriging and SpatialPixel grid file 【发布时间】:2021-01-15 15:51:13 【问题描述】:

我正在尝试在 automap 包中使用 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

我正在尝试在南非地图上绘制它。

首先我得到Create Grid in R for kriging in gstat之后的网格

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)

然后我将其转换为 SpatialPixel 数据帧

SAgrd_pts_in = as(SAgrd_pts_in,"SpatialPixelsDataFrame") 

plot(SAgrd_pts_in) 给出以下错误消息:

.subset2(x, i, exact = exact) 中的错误:下标超出范围

当我想在自动克里金法中使用以下行时也会给出错误消息

krigLL12_fit <- autoKrige(percent~1, SA.grid, LL12spdf) # percent is the variable of interest in the spdf LL12spdf

错误信息:

autoKrige 中的错误(百分比 ~ 1,SA.grid,LL12spdf): input_data 或 new_data 在 LongLat 中,请重新投影。 输入数据:+proj=longlat +ellps=WGS84 +towgs84=0,0,0,0,0,0,0 +no_defs 新数据:不适用 另外:警告信息: 1:在 proj4string(input_data) 中: CRS 对象有注释,在输出中丢失 2:在 proj4string(input_data) 中: CRS 对象有注释,在输出中丢失 3:在 showSRID(uprojargs, format = "PROJ", multiline = "NO") : 基于 WGS84 椭球在 CRS 定义中的废弃数据未知, 但 +towgs84= 保留值

我是这个主题的新手,无法意识到我需要做什么或纠正什么,坐标单位在网格和数据文件中看起来相同。我还安装了自变量函数并尝试在 autokrige 中使用,但它也不起作用。谢谢。

【问题讨论】:

【参考方案1】:

我发现了问题:将 NA 应用于其 crs 所需的网格文件,然后将其转换为 Spatial Pixels 文件,而不是 Spatial Pixels Data Frame。 我对此进行了扩展,其中包含代码和结果 https://gis.stackexchange.com/questions/375476/0-0-kriging-error-messages-grid-file-problem-automap-gstat

【讨论】:

以上是关于自动克里金法和 SpatialPixel 网格文件的主要内容,如果未能解决你的问题,请参考以下文章

使用 gstat 和 automap 包的克里金法 - 复制教程时的问题

如何在 Python 中使用克里金法对 2D 空间数据进行插值?

转Kriging插值法

如何在 openturns 中获得更好的克里金结果图?

通过 Python 中的 OpenTURNS 将一维数组转换为样本

数据可视化应用Python-pykrige包-克里金(Kriging)插值计算及可视化绘制