7 votos

Clásico y robusto variograma para su incorporación al modelo lineal generalizado

Estoy de modelado de cargos de los organismos a través del tiempo en once localidades. Me gustaría cuenta para la autocorrelación temporal en la cuenta, asumiendo que es presente.

Como los datos no están igualmente espaciados en el tiempo, estoy explorando variogramas empíricos (y la comparación de variograma modelo se ajusta a) basado en los residuos de un modelo lineal generalizado asumiendo la independencia.

Como se muestra a continuación, el variograma basado en el clásico semivariance estimador se ve muy diferente de la robusta (Cressie) estimador. Además, un ajuste de la mayoría de los modelos de variograma a la clásica variograma produce la singularidad de errores (con buena razón basada en el variograma de la parcela), mientras que un decente modelo exponencial (por ejemplo) puede ser ajustado a la robusta variograma. Por desgracia, parece como si nlme:::lme (el que estoy usando para el modelo generalizado) sólo se utiliza la clásica variograma en el momento del montaje de correlación de las estructuras.

Por lo tanto, mis preguntas:

(1) Es el uso del estimador robusto de la construcción de la estructura de las correlaciones justificado en este caso?
(2) Si es así, es apropiado para ajustarse a la de un robusto modelo de variograma en, por ejemplo, gstat o geoR, y, a continuación, especifique/corrección de la estructura de las correlaciones en la lme ajuste?

# Download data 
datURL <- "https://www.dropbox.com/s/54q9ocwztt3swap/rsiggeo_variogram.csv" 
dat <- repmis::source_data(datURL, sep = ",", header = TRUE) 

# Load necessary packages
library(gstat)
library(sp)

# Convert to appropriate class 
# Y coordinates are arbitrarily assigned values for each of 11 sites 
# (count locations; assumed independent); Y coords were assigned such 
# that each site is separated from others by more than the cutoff distance
# used in variogram construction 
coordinates(dat) <- ~x+y 

# Classic variogram model with example exponential fit 
varClassic <- variogram(resid ~ 1, dat, cutoff = 180, width = 180/25) 
# Note singularity error; starting values determine 'fit' 
expClassic <- fit.variogram(varClassic, model = vgm(1, "Exp", 1, 0)) 
plot(varClassic, expClassic, xlab = 'Distance (days)') 

classical variogram

# Robust (Cressie) variogram model with example exponential fit 
varCressie <- variogram(resid ~ 1, dat, cutoff = 180, width = 180/25, cressie=TRUE) 
expCressie <- fit.variogram(varCressie, model = vgm(0.3, "Exp", 50, 0.1)) 
plot(varCressie, expCressie, xlab = 'Distance (days)') 

robust variogram

3voto

Josh Peterson Puntos 108

Hallazgo interesante, y gracias por los preparados perfectamente reproducible ejemplo! Ambos variogramas que usted menciona están destinados a preparar para kriging lineal en el siguiente paso, y usted no quiere eso. La robusta variograma fue (IIRC) deviced para datos normales con algunos de la contaminación (outliers), pero no para datos de recuento.

Yo aconsejo mirar el modelo basado en la geoestadística, y ya que usted menciona el recuento de datos, usted probablemente acabaría utilizando el paquete geoRglm. La canónica de referencia es el libro con el mismo título por Ribeiro y Diggle. Usted también debe mirar a paquete geoCount que acaba de ser publicado en la edición del 11 de encontrar aquí; el papel incluye comparaciones con geoRglm y INLA (otra alternativa).

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X