当在相同位置不测量感兴趣的变量和辅助变量时的R_Co-kriging

时间:2018-04-25 22:33:20

标签: r kriging gstat

这是我第一次在gstat中使用共同克里金法。我的问题是,当感兴趣的变量和辅助变量没有在同一位置进行测量时,我不确定如何准备数据框以提供共同克里金法。

感兴趣的变量z_ar的数据框为voi_gs

> head(voi_gs)
             x        y     z_ar
8974  312216.6 530439.8 49.03470
8283  312084.6 530559.8 57.15355
5057  311772.6 530883.8 49.13453
1551  311976.6 531207.8 44.73679
10116 312168.6 530163.8 50.45549
6155  312528.6 530787.8 62.70750

辅助变量z_pts的数据框为aux_gs

> head(aux_gs)
            x        y    z_pts
9564 312198.6 530313.8 75.91368
6584 311766.6 530745.8 38.87462
2138 311562.6 531153.8 58.62555
9110 312534.6 530421.8 68.35654
9525 312366.6 530325.8 54.26653
7497 311442.6 530649.8 38.95024

我将它们合并为一个数据框,以提供variogram()krige()个功能。由于voi_gsaux_gs之间的位置不同,我引入了NA值,并按以下方式合并

> aux_gs$z_ar=NA
> voi_gs$z_pts=NA
> comb_gs=rbind(aux_gs,voi_gs)
> head(comb_gs)
            x        y    z_pts z_ar
9564 312198.6 530313.8 75.91368   NA
6584 311766.6 530745.8 38.87462   NA
2138 311562.6 531153.8 58.62555   NA
9110 312534.6 530421.8 68.35654   NA
9525 312366.6 530325.8 54.26653   NA
7497 311442.6 530649.8 38.95024   NA
> tail(comb_gs)
            x        y z_pts     z_ar
180  312468.6 531363.8    NA 70.54528
8633 312264.6 530511.8    NA 44.34631
7694 312492.6 530631.8    NA 57.30173
1079 312108.6 531255.8    NA 46.96482
2230 311124.6 531135.8    NA 40.36449
2201 312312.6 531147.8    NA 44.85896

然后我尝试构建交叉变异函数

> coordinates(comb_gs) = ~x+y
> g = gstat(formula=z_pts~z_ar, data=comb_gs)
> vg = variogram(g)

但变差函数不接受NA值并给我一个错误。我知道数据中不能有NA个值,但我不知道如何创建数据框来构造交叉变异函数。任何帮助都非常感谢。感谢。

1 个答案:

答案 0 :(得分:0)

我想到的两个想法是分别同步数据点或克里金法,对样本中的kriged曲面和co-kriging进行采样。

如果您的点数分布相似,那么您可能会选择一些最大间隔距离内的所有点并将它们组合为单个样本。这假设点的一般模式是相似的,即坐标不相同,但是辅助变量中的点的最近邻居往往比响应变量中的最近邻居更近。

相反,如果你的点都是随机分布在一个彼此很少或没有关系的相似区域(空间上,不一定是响应方式),那么也许从变量中制作单独的kriged曲面然后对kriged曲面进行采样将提供你有一个工作数据模型。