2013-09-02 11 views
6

Używam gstat do przewidywania dwumianowych danych, ale przewidywane wartości przekraczają 1 i poniżej 0. Czy ktoś wie, jak poradzić sobie z tym problemem? Dzięki.Kriging regresji danych dwumianowych

data(meuse) 
data(meuse.grid) 
coordinates(meuse) <- ~x+y 
coordinates(meuse.grid) <- ~x+y 
gridded(meuse.grid) <- TRUE 

#glm model 
glm.lime <- glm(lime~dist+ffreq, meuse, family=binomial(link="logit")) 
summary(glm.lime) 

#variogram of residuals 
var <- variogram(lime~dist+ffreq, data=meuse) 
fit.var <- fit.variogram(var, vgm(nugget=0.9, "Sph", range=sqrt(diff([email protected]\[1,\])^2 + diff([email protected]\[2,\])^2)/4, psill=var(glm.lime$residuals))) 
plot(var, fit.var, plot.nu=T) 

#universal kriging 
kri <- krige(lime~dist+ffreq, meuse, meuse.grid, fit.var) 
spplot(kri[1]) 

enter image description here

Odpowiedz

3

Na ogół tego rodzaju podejścia krigingu regresji nie ma gwarancji, że model będzie ważna jak obliczenia trendu i reszt jest oddzielone. Kilka uwag na temat twojego kodu. Zauważ, że używasz variogram do obliczenia resztkowego variogramu, ale variogram używa normalnego modelu liniowego do obliczenia trendu, a więc także reszty. Musisz określić swoje reszty z glm, a następnie obliczyć na podstawie tego różnicę resztkową.

Możesz zrobić to ręcznie lub przejrzeć funkcję fit.gstatModel z pakietu fit.gstatModel. Możesz również rzucić okiem na binom.krige z pakietu geoRglm. This thread na R-SIG-GEO może być również interesujące:

Biorąc residuas z GLM jest inna z użyciem wskaźnika zmienne. Również mogą występować pewne różnice w zależności od rodzaju resztek GLM, które bierzesz. Przeprowadź GLM i zbadaj resztę, np. . za pośrednictwem wariogramów jest to coś, co uważam za rutynową praktykę, ale nie odrzuca całej historii. Dopasowanie GLGM (zgeometryzowany liniowy model geostatyczny) może być bardziej jednoznaczne od można dokonać wnioskowania na temat parametrów modelu i bardziej obiektywnie uzyskać dostęp do trafności terminu przestrzennego. Była to pierwotna motywacja dla geoRglm, która wykonała wszystkie modelowanie naraz, a nie przez dwa kroki, takie jak , jako dopasowanie modelu bez korelacji, a następnie modelowanie reszt. To przyszło z dodatkowym obciążeniem kalibracji algorytmów MCMC. Później spBayes pojawił się na scenie i wygląda obiecująco, proponując bardziej ogólne ramy, podczas gdy geoRglm jest raczej specyficzny dla modeli jednowymiarowych dwumianowych i trucizn.

jak Roger mówi, istnieje możliwość, aby bawić się z innymi alternatywami takich jak GLMM czy może MCMCpack, ale to na pewno nie jest gotowy „out-of-the-box” i kod będzie musiał zostać dostosowany do przestrzenny cele.

Powiązane problemy