georksline中Krig的协方差参数

georksline中Krig的协方差参数,r,gis,covariance,kriging,geor,R,Gis,Covariance,Kriging,Geor,我有一个以mg/kg为单位的位置和苯浓度的小数据集 WELL.ID X Y BENZENE 1 MW-02 268.8155 282.83 0.00150 2 IW-06 271.6961 377.01 0.00050 3 IW-07 251.0236 300.41 0.01040 4 IW-08 278.9238 300.37 0.03190 5 MW-10 281.4008

我有一个以mg/kg为单位的位置和苯浓度的小数据集

    WELL.ID   X           Y     BENZENE
1   MW-02   268.8155    282.83  0.00150
2   IW-06   271.6961    377.01  0.00050
3   IW-07   251.0236    300.41  0.01040
4   IW-08   278.9238    300.37  0.03190
5   MW-10   281.4008    414.15  2.04000
6   MW-12   391.3973    449.40  0.01350
7   MW-13   309.5307    335.55  0.01940
8   MW-15   372.8967    370.04  0.01620
9   MW-17   250.0000    428.04  0.01900
10  MW-24   424.4025    295.69  0.00780
11  MW-28   419.3205    250.00  0.00100
12  MW-29   352.9197    277.27  0.00031
13  MW-31   309.3174    370.92  0.17900
我试着在网格中对值进行krig(这些井所在的属性),就像这样

我明白了

对于前5000行,这些值不会更改。。。(无法查看更多内容,因为max.print=5000…也不确定如何更改,但这是一条切线..)

我意识到我的

cov.pars = c(10,3.33)
范围和门槛可能是问题所在

第19页描述了cov.PAR的期望值,但我不确定如何确定这些协方差参数需要是什么

是否有一种方法可以从现有数据中找到合适的值,或者我可以将这些值设置为通用值,其中我的输出将类似于ESRI的ArcGIS的空间分析包中执行的克里格法

编辑:::

我的地理数据对象转换不正确。。。 下面是正确的方法

c <- as.geodata(b, coords.col = 2:3, data.col = 4, )

c一种方法是使用
variofit
函数(也在
geoR
包中)来估计协方差参数。例如,使用数据和初始值:

vario <- variog(c)  # See other options here for binning, etc
# Note that the order of the cov.pars is variance, then range, (see your question)
fitted_model <- variofit(vario=vario, ini.cov.pars=c(10, 3.33), cov.model='exp')
q <- ksline(c, cov.model=fitted_model$cov.model, cov.pars=fitted_model$cov.pars,
            nugget=fitted_model$nugget, locations=in_mat)

有多种方法可以估计这些参数。你看过variofit函数吗?我没有。。。你能举个例子吗?读一下这个小插曲。既然这是一个关于统计方法的问题,谢谢,我会读一读。。。感谢您的帮助,nmel和blindJesse--Zr为什么您仍然使用10和3.33作为已安装的_modelini.cov.pars?请查看variofit的帮助。您需要提供一些合理的起始值,然后从那里进行优化。我只是用了你提供的东西。
         [,1]     [,2]
 [1,] 343.8958 10.91698
 [2,] 343.8958 10.91698
 [3,] 343.8958 10.91698
 [4,] 343.8958 10.91698
 [5,] 343.8958 10.91698
 [6,] 343.8958 10.91698
 [7,] 343.8958 10.91698
 [8,] 343.8958 10.91698
 [9,] 343.8958 10.91698
[10,] 343.8958 10.91698
cov.pars = c(10,3.33)
c <- as.geodata(b, coords.col = 2:3, data.col = 4, )
v1 <- variog(c)
length(v1$n)
v1.summary <- cbind(c(1:11), v1$v, v1$n)
colnames(v1.summary) <- c("lag", "semi-variance", "# of pairs")
v1.summary
vario <- variog(c)  # See other options here for binning, etc
# Note that the order of the cov.pars is variance, then range, (see your question)
fitted_model <- variofit(vario=vario, ini.cov.pars=c(10, 3.33), cov.model='exp')
q <- ksline(c, cov.model=fitted_model$cov.model, cov.pars=fitted_model$cov.pars,
            nugget=fitted_model$nugget, locations=in_mat)