Resumen
Toma los datos del panel o de la estación (ubicaciones definidas donde la geografía no cambia pero los atributos cambian con el tiempo) y los estructura en un formato de datos netCDF creando bins de espacio-tiempo. Para todas las ubicaciones, se evalúa la tendencia de las variables o campos de resumen.
Más información sobre cómo funciona Crear cubo de espacio-tiempo a partir de ubicaciones definidas
Ilustración
Uso
Esta herramienta toma los datos del panel o de la estación (ubicaciones definidas donde los atributos cambian con el tiempo, pero la geografía no cambia) como Entidades de entrada y los estructura en bins de espacio-tiempo. La estructura de datos que crea se puede interpretar como un cubo tridimensional compuesto de bins de espacio tiempo donde las dimensiones x e y representan el espacio y la dimensión t representa el tiempo.
Cada bin tiene una posición fija en el espacio (ubicación x,y si las entradas son puntos, y un conjunto fijo de vértices si las entradas son ubicaciones de polígonos) y en el tiempo (t). Los bins que abarcan la misma área de ubicación definida (ya sea x,y o vértices) comparten el mismo Id. de ubicación. Los bins que abarcan la misma duración comparten el mismo Id. de periodo de tiempo.
Cada bin del cubo de espacio-tiempo tiene un LOCATION_ID, un time_step_ID, un valor COUNT y valores para cualquier variable o campo de resumen que se haya incluido a la hora de crear el cubo. Los bins que estén asociados a la misma ubicación física compartirán el mismo Id. de ubicación y, conjuntamente, representarán una serie temporal. Los bins que estén asociados al mismo periodo de tiempo compartirán el mismo Id. de periodo de tiempo y, conjuntamente, formarán un intervalo de tiempo.
Las Entidades de entrada pueden ser puntos o polígonos y deben representar ubicaciones definidas o fijas con atributos asociados que se hayan capturado con el tiempo. Este tipo de datos se conoce habitualmente como datos de panel o de estación. El campo que contiene la marca de tiempo del evento debe ser del tipo Fecha.
Nota:
Si las entidades de entrada están almacenadas en una geodatabase de archivos y contienen curvas verdaderas (almacenadas como arcos y no con vértices), las formas poligonales se distorsionarán cuando se almacenen en el cubo de espacio-tiempo. Para comprobar si las entidades de entrada contienen curvas verdaderas, ejecute la herramienta Verificar geometría con el Método de validación OGC. Si aparece un mensaje de error que indica que la opción seleccionada no admite segmentos no lineales, significa que hay curvas verdaderas en el dataset y que pueden eliminarse y reemplazarse por vértices usando la herramienta Densificar con el Método de densificación Ángulo antes de crear el cubo de espacio-tiempo.
Las Entidades de entrada pueden ser formas repetidas incluidas dentro de la misma clase de entidad o un conjunto de entidades con una tabla relacionada que contenga los atributos registrados con el tiempo.
La herramienta fallará si los parámetros especificados dan lugar a un cubo con más de dos mil millones de bins.
Esta herramienta requiere los datos proyectados para medir distancias con precisión.
Si se activa la Agregación temporal, el cubo de espacio-tiempo resultante incluirá un valor del recuento de cada bin que refleja el número de eventos ocurridos en la ubicación asociada dentro del intervalo de tiempo asociado.
La salida de esta herramienta es una representación netCDF de las entidades de entrada, así como mensajes en los que se resumen las características del cubo. Los mensajes se escriben en la parte inferior del panel Geoprocesamiento durante la ejecución de la herramienta. Puede acceder a los mensajes desplazándose sobre la barra de progreso, haciendo clic en el botón emergente o ampliando la sección de mensajes en el panel Geoprocesamiento. También puede acceder a los mensajes de una herramienta ejecutada anteriormente a través del Historial de geoprocesamiento. Puede utilizar el archivo netCDF como entrada para otras herramientas como, por ejemplo, Análisis de puntos calientes emergentes o Análisis de valores atípicos locales. Consulte Visualización del cubo de espacio-tiempo para obtener estrategias con las que podrá consultar el contenido del cubo.
Seleccione un campo de tipo Fecha para el parámetro Campo de tiempo. Si la entrada corresponde a formas repetidas, este campo debería contener el registro de tiempo asociado a cada entidad. Si la entrada tiene una Tabla relacionada, este campo será el registro de tiempo asociado a cada registro de la tabla.
El Intervalo de periodo de tiempo define cómo desea realizar la partición del intervalo de tiempo de los datos. Si la agregación temporal está desactivada, el Intervalo de periodo de tiempo se debe establecer según la estructura existente de los datos. Por ejemplo, si tiene datos censales que se han recopilado durante cinco años, la entrada debería ser 5 años. Active este parámetro si desea agregar temporalmente. Por ejemplo, si tiene datos de sensor que se registran cada 5 minutos, podría decidir agregar utilizando, por ejemplo, intervalos de un día. Los intervalos de periodos de tiempo son siempre duraciones fijas y la herramienta requiere diez periodos de tiempo como mínimo.
Nota:
Aunque en la lista desplegable de Intervalo de periodo de tiempo se incluyen varias unidades de tiempo, la herramienta solo admite años, meses, semanas, días, horas, minutos y segundos.
Si no es posible crear el cubo de espacio-tiempo, puede que la herramienta no haya podido estructurar los datos de entrada que ha proporcionado en diez intervalos de tiempo. Si aparece un mensaje de error mientras ejecuta esta herramienta, examine las marcas de hora de la entrada para asegurarse de que incluyen un rango de valores (al menos diez). El rango de valores debe abarcar al menos 10 segundos, pues este es el incremento de tiempo más pequeño que utilizará la herramienta. La estadística de Mann-Kendall necesita diez intervalos de tiempo.
El Tiempo de referencia puede ser un valor de fecha y hora o simplemente un valor de fecha; no debe ser solo un valor de hora. El formato esperado está determinado por la configuración de tiempo regional del equipo.
El análisis de tendencias realizado en las variables agregadas o en los valores de los campos de resumen se basan en la estadística de Mann-Kendall.
Las operaciones estadísticas siguientes están disponibles para agregar atributos con esta herramienta: Suma. Media, Mínimo, Máximo, Desviación estándar y Mediana.
Los valores nulos presentes en cualquiera de los registros de los campos de resumen darán lugar a que esas entidades se excluyan del cubo de salida. Si existen valores nulos en sus Entidades de entrada, se recomienda encarecidamente ejecutar primero la herramienta Rellenar valores que faltan. Si después de ejecutar la herramienta Rellenar valores que faltan todavía hay valores nulos y el recuento de puntos de cada bin forma parte de su estrategia de análisis, tal vez deba considerar crear cubos separados, uno para el recuento (sin campos de resumen) y otro para campos de resumen. Si el conjunto de valores nulos es distinto para cada campo de resumen, también puede pensar en crear un cubo separado para cada campo de resumen.
Al rellenar bins vacíos con SPATIAL_NEIGHBORS, la herramienta realiza una estimación según los 8 vecinos más cercanos. Con esta opción, se necesitan por lo menos 4 vecinos espaciales para rellenar el bin vacío.
Al rellenar bins vacíos con SPACE_TIME_NEIGHBORS, la herramienta realiza una estimación según los 8 vecinos más cercanos. Además, se utilizan los vecinos temporales para cada uno de los bins que se determine que son vecinos espaciales hacia delante o hacia atrás 1 paso en el tiempo. Con esta opción, se necesitan por lo menos 13 vecinos en el espacio-tiempo para rellenar el bin vacío.
Al rellenar bins vacíos con TEMPORAL_TREND, los dos primeros periodos de tiempo y los dos últimos periodos de tiempo de una ubicación determinada deben tener valores en sus bins para poder interpolar valores en otros periodos de tiempo para esa ubicación.
El tipo de relleno TEMPORAL_TREND utiliza el método Spline univariante interpolada del paquete de interpolación de SciPy.
Esta herramienta puede aprovechar el aumento de rendimiento disponible en sistemas que utilizan varias CPU (o varias CPU multinúcleo). De forma predeterminada, la herramienta se ejecutará con el 50 % de los procesadores disponibles; no obstante, el número de CPU utilizadas se puede aumentar o disminuir con el entorno Factor de procesamiento en paralelo. La velocidad de procesamiento aumentada es más notable al crear cubos de espacio-tiempo más grandes.
Sintaxis
arcpy.stpm.CreateSpaceTimeCubeDefinedLocations(in_features, output_cube, location_id, temporal_aggregation, time_field, {time_step_interval}, {time_step_alignment}, {reference_time}, {variables}, {summary_fields}, {in_related_table}, {related_location_id})
Parámetro | Explicación | Tipo de datos |
in_features | La clase de entidad de punto o poligonal de entrada que se va a convertir a un cubo de espacio-tiempo. | Feature Layer |
output_cube | El cubo de datos netCDF de salida que se creará. | File |
location_id | Un campo de tipo entero que contiene el número de Id. para cada ubicación única. | Field |
temporal_aggregation |
| Boolean |
time_field | El campo que contiene el registro de tiempo para cada fila del dataset. Este campo de tiempo debe ser de tipo Fecha. | Field |
time_step_interval (Opcional) | El número de segundos, minutos, horas, días, semanas o años que representará un periodo de tiempo único. Estos serían algunos ejemplos de entradas válidas para este parámetro: 1 semana, 13 días o 1 mes. Si la temporal_aggregation está desactivada, significa que no va a agregar temporalmente y este parámetro se debe establecer según la estructura existente de los datos. Si la temporal_aggregation está activada, significa que va a agregar temporalmente y este parámetro se debe establecer según el time_step_interval que desee crear. Se agregarán todas las entidades que queden dentro del mismo time_step_interval. | Time Unit |
time_step_alignment (Opcional) | Define cómo se realizará la estructura del cubo según un time_step_interval determinado.
| String |
reference_time (Opcional) | La fecha/hora que se va a utilizar para alinear los intervalos de periodos de tiempo. Si desea colocar en el bin los datos semanalmente de lunes a domingo, por ejemplo, puede establecer un tiempo de referencia el domingo a medianoche para garantizar que los bins cortan entre domingo y lunes a medianoche. | Date |
variables [[Field, Fill Empty Bins with],...] (Opcional) | El campo numérico que contiene los valores de atributos que se transferirán al cubo de espacio-tiempo. Los tipos de relleno disponibles son:
Nota:Los valores nulos presentes en cualquiera de los registros variables darán lugar a un bin vacío. Si existen valores nulos en sus entidades de entrada, se recomienda encarecidamente ejecutar primero la herramienta Rellenar valores que faltan. | Value Table |
summary_fields [[Field, Statistic, Fill Empty Bins with],...] (Opcional) | Campo numérico que contiene valores de atributos que se utilizan para calcular la estadística especificada al agregar dentro de un cubo de espacio-tiempo. Se pueden especificar varias estadísticas y combinaciones de campos. Los valores nulos presentes en cualquiera de los campos especificados darán lugar a que dicha entidad se excluya del cubo de salida. Si existen valores nulos en sus entidades de entrada, se recomienda encarecidamente ejecutar la herramienta Rellenar valores que faltan antes de crear un cubo de espacio-tiempo. Los tipos de estadística disponibles son:
Los tipos de relleno disponibles son:
Nota:Los valores nulos presentes en cualquiera de los registros de los campos de resumen darán lugar a que esas entidades se excluyan del cubo de salida. Si existen valores nulos en sus Entidades de entrada, se recomienda encarecidamente ejecutar primero la herramienta Rellenar valores que faltan. Si después de ejecutar la herramienta Rellenar valores que faltan todavía hay valores nulos y el recuento de puntos de cada bin forma parte de su estrategia de análisis, tal vez deba considerar crear cubos separados, uno para el recuento (sin campos de resumen) y otro para campos de resumen. Si el conjunto de valores nulos es distinto para cada campo de resumen, también puede pensar en crear un cubo separado para cada campo de resumen. | Value Table |
in_related_table (Opcional) | La tabla o vista de tabla que se relacionará con las entidades de entrada. | Table View |
related_location_id (Opcional) | Un campo de tipo entero de la tabla relacionada que contiene el Id. de ubicación sobre el que se basará la relación. | Field |
Muestra de código
El siguiente script de la ventana de Python muestra cómo utilizar la herramienta CreateSpaceTimeCubeDefinedLocations.
import arcpy
arcpy.env.workspace = r"C:\STPM\Chicago.gdb"
arcpy.CreateSpaceTimeCubeDefinedLocations_stpm("Chicago_Data", r"C:\STPM\Chicago_Cube.nc", "MYID",
"NO_TEMPORAL_AGGREGATION", "TIME", "1 Months",
"END_TIME", "", "COUNT ZEROS")
El siguiente script de Phython independiente muestra cómo utilizar la herramienta CreateSpaceTimeCubeDefinedLocations.
# Fill missing values using a feature set and related table
# Use the results to create a space-time cube from defined locations
# Run Emerging Hot Spot Analysis on the data
# Visualize the results in 3d
# Import system modules
import arcpy
# Set geoprocessor object property to overwrite existing output, by default
arcpy.env.overwriteOutput = True
# Local variables ...
arcpy.env.workspace = r"C:\STPM\Chicago.gdb"
try:
# Fill missing values in a feature class containing block group polygon shapes and a related table containing the incidents
# Since some of the values are missing we will fill them using the temporal trend method.
arcpy.FillMissingValues_stpm("Chicago_Feature", "Chicago_FilledFeature", "COUNT", "TEMPORAL_TREND", "", "", NoneNone,
"TIME", "", "MYID", "Chicago_Table", "MYID", "", "", "", "Chicago_FilledTable")
# Create a defined location space time cube using a related table
# Using a reference time at the start of the month to force binning fall on month breaks
# Using temporal aggregation to sum multiple entries into one month
# Using the method drop location if missing values since we already filled using Fill Missing Values
arcpy.CreateSpaceTimeCubeDefinedLocations_stpm("Chicago_FilledFeature", r"C:\STPM\Chicago_Cube.nc", "MYID",
"APPLY_TEMPORAL_AGGREGATION", "TIME", "1 Months", "REFERENCE_TIME",
"10/1/2015", "", "COUNT SUM DROP_LOCATIONS", "Chicago_FilledTable",
"MYID")
# Run an emerging hot spot analysis on the defined locations cube
# Using contiguity edges so only block groups which bound each other are considered neighbours
arcpy.EmergingHotSpotAnalysis_stpm(r"C:\STPM\Chicago_Cube.nc", "COUNT_SUM_NONE",
"Chicago_Cube_EmergingHotSpot", "", 1, "",
"CONTIGUITY_EDGES_ONLY")
# Use Visualize Cube in 3d to see the hot spot results for each time slice
arcpy.VisualizeSpaceTimeCube3D_stpm(r"C:\STPM\Chicago_Cube.nc", "COUNT_SUM_NONE", "HOT_AND_COLD_SPOT_RESULTS",
"Chicago_Cube_Visualize3d")
except arcpy.ExecuteError:
# If any error occurred when running the tool, print the messages
print(arcpy.GetMessages())
Entornos
Información de licenciamiento
- Basic: Sí
- Standard: Sí
- Advanced: Sí
Temas relacionados
- Cómo funciona la herramienta Crear cubo de espacio-tiempo
- Análisis de puntos calientes emergentes
- Análisis de valores atípicos locales
- Clustering de serie temporal
- Visualizar el cubo de espacio-tiempo
- ¿Qué es una puntuación z? ¿Qué es un valor P?
- Descripción general de la caja de herramientas Minería de patrones en espacio-tiempo
- Buscar una herramienta de geoprocesamiento