使用R中的Kriging查找变异函数参数

时间:2019-05-25 20:08:27

标签: r geospatial prediction covariogram

我正在使用Kriging进行时空建模,并且在计算协方差模型的基石,块金和范围方面遇到困难;可分离,乘积求和,度量,求和度量和简单求和度量用于克里格预测。

我经历了很多教程,但是它们没有确切解释我如何计算窗台,块金和范围的值。

这是我的时空样本变异函数图和以线框表示的同一图

enter image description here

enter image description here

我尝试使用代码来识别门槛,熔核和范围,但是我不确定这些值是否正确!

我从时空数据中创建了Variogram对象:

vario <-variogram(Traffic~Latitude+Longitude,STFDF_data[!is.na(STFDF_jour[,"2019-05-17 00:00","Traffic"]$Traffic),"2019-05-17 00:00","Traffic"])

(fSph = fit.variogram(vario, vgm("Sph")))
  model     psill    range
1   Nug 5654.0478  0.00000
2   Sph  729.4461 15.25662
fSph
  model     psill    range
1   Nug 5654.0478  0.00000
2   Sph  729.4461 15.25662
fSph$psill[2] # sill
[1] 729.4461
fSph$range[2] # range
[1] 15.25662
fSph$psill[1] # nugget
[1] 5654.048

我不知道门槛的结果是否准确,大约是729,范围15和金块是5654! 我试图绘制方差图和

enter image description here

但是,当我在可分离协方差模型中使用门槛,块金和范围并将模型拟合到我的方差图时,它会显示错误消息:

separableModel <- vgmST("separable", method = "Nelder-Mead", 
                        space=vgm(0.9,"Exp", 15, 5654),
                        time =vgm(0.9,"Exp", 15, 5654),
                        sill=700)

适合模型:

    separable_fit <- fit.StVariogram(model= separableModel,object= vario)
Error in vgm(1 - par[4], as.character(model$time$model[2]), par[3], par[4],  : 
  range should be positive

我需要一些有关调整协方差模型的帮助。

我尝试拟合随机选择的一些数字,并在下面得到此图,

separableModel <- vgmST("separable",
                        method = "Nelder-Mead", # no lower & upper needed
                        space=vgm(0.9,"Exp", 123, 0.1),
                        time =vgm(0.9,"Exp", 2.9, 0.1),
                        sill=100)

separable_fit <- fit.StVariogram(model=separableModel,object= vario)
plot(vario,separable_fit,all=T,map=F)
plot(vario,separable_fit,map=T, all=T)

enter image description here

enter image description here

数字不是Sill,Nugget和Range的确切值,但是我能够拟合模型,但是当我在下面使用以下代码提取Sill,Nugget和range的值时,它显示出不同的值数字比我在上面的代码中定义的数字还要多!

extractPar(separable_fit)
     range.s     nugget.s      range.t     nugget.t         sill 
5.263074e+01 4.566903e-01 1.023185e+01 4.737951e-02 8.413538e+04 

这让我感到困惑!

plus当我检查均方误差确实很高

separable_MSE<- attr(separable_fit, "MSE")
separable_MSE

7798887

我只是对这部分感到困惑,请寻求您的帮助,以了解如何使用这三个参数来获取和拟合模型。

感谢您提供详细说明的帮助。

0 个答案:

没有答案