Найти параметры вариограммы с помощью Кригинга в R

Я работаю над пространственно-временным моделированием с помощью Kriging, и у меня возникают трудности с вычислением силла, Nugget и Range для ковариационных моделей; Разделяемые, ProductSum, Metric, Sum Metric и Simple Sum Metric для использования в прогнозировании Kriging.

Я прошел много уроков, но они не объясняют точно, как я могу вычислить значения силла, самородка и диапазона.

Вот моя пространственно-временная выборочная карта вариограммы и та же карта, представленная в виде каркаса

Я попробовал код, чтобы определить подоконник, самородок и диапазон, но я не уверен, что значения точны!

Я создал объект 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!! Я пытался построить вариограмму и

Однако, когда я использую порог и самородок, а также диапазон в ковариантной модели Separable и подгоняю модель к моей вариограмме, появляется сообщение об ошибке:

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)

Числа не являются точными значениями Sill, Nugget и Range, но я смог уместить модель, однако, когда я использовал этот код ниже для извлечения значений Sill, Nugget и диапазона, он показывает цифры, отличные от один я определяю в коде выше!

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 

это меня смущает!

плюс, когда я проверяю, средняя квадратическая ошибка действительно высока

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

7798887

Я просто запутался в этой части, и я прошу вашей помощи, пожалуйста, чтобы понять, как я могу получить и подобрать модель с этими 3 параметрами.

Любая помощь с подробным объяснением приветствуется.

0 ответов

Другие вопросы по тегам