Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当感兴趣的变量和辅助变量未在相同位置测量时,R_协克里金法_R_Kriging_Gstat - Fatal编程技术网

当感兴趣的变量和辅助变量未在相同位置测量时,R_协克里金法

当感兴趣的变量和辅助变量未在相同位置测量时,R_协克里金法,r,kriging,gstat,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

这是我第一次在
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
> 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
带有辅助变量z_pts的数据帧是
aux_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
> 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
我将它们组合到一个数据帧中,以提供给
variagram()
krige()
函数。由于
voi_gs
aux_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
值,但我不知道如何创建数据帧来构造交叉变异函数。非常感谢您的帮助。谢谢。

我想到的两个想法是分别同步数据点或克里格法,对克里格表面进行采样,并从样本中进行联合克里格法

如果点的分布相似,则可能会拾取某个最大间隔距离内的所有点,并将它们作为单个样本进行组合。假设点的一般模式相似,即坐标不相同,但辅助变量中某点的最近邻往往比响应变量中的最近邻更近

相反,如果您的点都随机分布在一个相似的区域中,彼此之间几乎没有关系(在空间上,不一定是响应方面),那么也许从变量生成单个克里格曲面,然后对克里格曲面进行采样将为您提供一个工作数据模型