Bloqueo espacio-temporal kriging con paquete R gstat?

9

En la documentación de spVi que el coordsargumento de la SpatialPolygonsfunción solo acepta 2 columnas. ¿No es posible crear polígonos tridimensionales? Estoy haciendo kriging espacio-temporal usando el paquete gstatagregando tiempo como una tercera dimensión espacial de a SpatialPointsDataFrame. Me gustaría extender eso para bloquear kriging con polígonos como bloques. ¿Hay alguna manera de hacerlo?

Nima
fuente

Respuestas:

5

En sp, SpatialPoints*, SpatialPixels*y SpatialGrid*(con *suprimido o sustituido por DataFrame) ¿Apoya más de 2 dimensiones espaciales, como la OP ha hecho, pero SpatialPolygons*y SpatialLines*no lo hacen. Con gstatusted puede hacer kriging en bloque 3-D con bloques 3-D (usando block = c(10,10,10)), pero no puede hacer esto para bloques no rectangulares, como quiere OP. Está perfectamente bien sustituir el tiempo por la tercera dimensión, pero está limitado al variograma métrico ST.

library(gstat)
vignette("st")

le brinda más opciones para los modelos de variograma, pero no para predecir los valores medios de bloque (esto es FYI, no una respuesta a la pregunta).

La única respuesta a la pregunta sería hacer simulaciones condicionales 3D y agregar valores de puntos sobre sus bloques 3D arbitrarios (polígono 2D + extensión de tiempo). Tedioso, pero posible; también solo a lo largo de la ruta 3D, no a lo largo de la ruta descrita en la viñeta ST ( krigeSTtodavía no hace simulación).

Edzer Pebesma
fuente
3

Realmente necesita investigar un poco más sobre su metodología y leer la documentación para comprender la estructura de los objetos de la clase sp S4 y la interacción de los objetos sp con funciones gstat relevantes. En la viñeta sp hay una explicación detallada de la diferencia entre los objetos SpatialPolygons (solo topología de polígonos) y SpatialPolygonDataFrame (polígonos con atributos).

Lo que está explicando no es bloquear Kriging y usar el tiempo como un atributo no da como resultado una estimación espacio-temporal. La metodología conceptual que describe es bastante inválida. El uso de polígonos o centroides poligonales viola los supuestos de Kriging de un campo aleatorio uniforme, anisotropía y no estacionariedad.

Aquí hay una buena viñeta gstat en modelos espacio-temporales que usan la interfaz para el paquete espacio-tiempo. También debo tener en cuenta que el paquete kriging constreñido puede realizar Kriging en bloque en bloques de forma arbitraria utilizando una función media no estacionaria y un variograma isotrópico débilmente estacionario.

Dicho esto, para responder a su pregunta, puede pasar un objeto sp SpatialPointsDataFrame directamente a un modelo de variograma / Kriging en gstat. En este tipo de objeto sp, los atributos residen en la ranura de "datos" y ya están unidos a las coordenadas a través de la estructura interna de clase S4.

# COERCE meuse DATAFRAME TO sp SpatialPointsDataFrame OBJECT
require(gstat)
data(meuse)
coordinates(meuse) <- ~ x + y
head(meuse@data)

# CREATE SEMIVARIOGRAM USING THE zinc ATTRIBUTE
# NOTE: THERE IS NO ARGUMENT FOR A "4th DIM"
v <- variogram(log(zinc) ~ 1, meuse)
plot(v, type = "l")
Jeffrey Evans
fuente
0

El tiempo sería una cuarta dimensión, el nivel z o la altura sería la tercera, las latas o dems o los niveles z manejarían la altura en gis, el tiempo podría estar representado por una base de datos versionada. puede asignar el polígono a una lata o intersectarse con una dem, o asociar la columna az a las columnas xy que representan los puntos de forma del polígono. Quizás también podría agregar un campo de tiempo con un rango de valores y cambios de valor a través del tiempo, incrementados como columnas. Por supuesto, ESRI probablemente tiene una herramienta para eso.

Luis
fuente
No creo que el Analista Geoestadístico sea compatible con kriging espacio-tiempo.
Paul Hiemstra