Puntos Calientes en el Espacio-Tiempo Cómo Desbloquear una Nueva Dimensión de Ideas

Zonas Candentes en el Espacio-Tiempo Cómo Desbloquear una Nueva Dimensión de Ideas

Es posible que hayas escuchado la estadística de que el 80% de los datos tiene un componente espacial, y puedes estar seguro de que cerca del 100% tiene una dimensión temporal. Pero, ¿cómo puedes analizar eficazmente la interacción entre los dos?

El agrupamiento espacio-temporal es un enfoque para esto.

Esta técnica analiza los patrones tanto espaciales como temporales, permitiendo a las empresas descubrir tendencias ocultas y tomar decisiones más informadas a nivel detallado, tanto en el espacio como en el tiempo.

Pero, ¿cómo funciona y cómo puedes utilizarlo en tu organización para tomar mejores decisiones? Sigue leyendo para descubrirlo y seguir nuestra guía paso a paso para utilizar este enfoque y generar poderosos conocimientos empresariales, ¡rápidamente!

¿Qué es el agrupamiento espacio-temporal?

Imagina que eres un analista de una empresa de entrega de alimentos. ¿Tu trabajo? Optimizar las entregas. Para hacer eso, necesitarías saber qué ubicaciones tienen un alto número de entregas, es decir, dónde están los clusters o hotspots, para poder colocar a los repartidores en consecuencia. Fácil, ¿verdad?

Pero espera. Hay clusters en tres ubicaciones principales: el distrito central de negocios, un punto de referencia nocturno y una zona residencial. Esas ubicaciones probablemente tengan demandas variables en diferentes momentos del día. El simple hecho de enviar más repartidores a todas estas ubicaciones resultaría en mucho tiempo desperdiciado, y por lo tanto, en dinero desperdiciado.

Este es el caso de uso perfecto para el agrupamiento espacio-temporal. Este enfoque te indica no solo dónde están los hotspots, sino también dónde y cuándo están. Esta información te permite agregar esa dimensión adicional de conocimiento a tus decisiones, lo cual es crucial cuando los márgenes de beneficio son ajustados.

¿Cómo funciona el agrupamiento espacio-temporal?

Primero, hablemos de lo que es un cluster o hotspot.

El análisis de hotspots identifica y mide la fuerza de los patrones espaciales al tomar el vecindario definido por el usuario para cada elemento en una tabla espacial y calcular si los valores dentro de ese vecindario son significativamente más altos o más bajos que en toda la tabla. Hay una variedad de algoritmos de hotspot disponibles, siendo los dos más comunes las herramientas estadísticas Getis-Ord* vs Moran’s I; puedes aprender más sobre ellos en nuestra guía completa de hotspots espaciales aquí.

Una comparación lado a lado de dos mapas; el mapa de la mano izquierda muestra datos brutos de visitantes alrededor de San Francisco, y el mapa de la mano derecha muestra los hotspots de estos datos.

Datos brutos de recuento de visitantes (izquierda) vs hotspots de Getis-Ord* (derecha).

El agrupamiento espacio-temporal funciona de manera similar, pero también evalúa si los valores son estadísticamente significativos a lo largo del tiempo, además del espacio.

Nuestra Caja de herramientas de análisis para Google BigQuery incluye funciones que hacen exactamente eso, calculando la estadística de agrupamiento espacio-temporal Getis-Ord Gi* (GI*). Los valores positivos de GI* indican que los valores en el vecindario son significativamente más altos que en toda la tabla, es decir, es un hotspot, y los valores negativos de GI* indican lo contrario. Puedes leer más sobre cómo se calcula esto en nuestra documentación.

¿Esto suena como algo que necesitas? ¡Sigue leyendo para obtener un tutorial paso a paso!

Agrupamiento espacio-temporal: una guía paso a paso

Para seguir esta guía, necesitarás dos cosas. En primer lugar, una cuenta de CARTO; puedes registrarte para una prueba gratuita de 14 días aquí si aún no tienes una.

En segundo lugar, ¡necesitarás un conjunto de datos que desees investigar! Cualquier conjunto de datos con dimensiones espaciales y temporales funcionará. En este ejemplo, estaremos analizando las tendencias espaciotemporales de los 1.8 millones de colisiones de vehículos que ocurrieron en la ciudad de Nueva York desde 2012 hasta el presente (visualizado en el mapa a continuación, o abierto en pantalla completa aquí). Investigaremos si ciertas partes de la ciudad experimentan más colisiones de vehículos en determinadas horas del día. Este ejemplo es útil para casos de uso como la planificación del transporte o el diseño urbano.

Si deseas seguir este ejemplo, puedes acceder a los datos aquí.

Paso 1: Preprocesamiento de datos

En primer lugar, si tus datos aún no están en la nube, deberás cargarlos en tu proyecto de Google BigQuery, lo cual puedes hacer siguiendo esta guía. Si no tienes acceso a tu propio proyecto, puedes utilizar el Almacén de datos CARTO, que se proporciona para todos los usuarios.

En segundo lugar, debemos asegurarnos de que nuestros datos estén estructurados correctamente para ejecutar este análisis. Utilizaremos la SQL espacial a continuación para hacer esto, lo cual resultará en las siguientes variables:

  • Una variable de índice espacial: la técnica de agrupación que utilizaremos requiere que los datos estén en un formato de índice espacial, es decir, una cuadrícula espacial continua. Para hacer esto, en el paso 1 crearemos una geometría de punto a partir de la longitud y latitud de los datos (ST_Geogpoint) y luego, en el paso 2, convertiremos esto en un índice H3 (H3_FromGeogPoint). ¡Puedes obtener más información sobre los índices espaciales en este libro electrónico GRATUITO!
  • Una marca de tiempo: la hora de la colisión se almacena originalmente en la variable “crash_time” como una cadena, por lo que utilizaremos una combinación de funciones de cadena para acceder al valor de la hora en el paso 1. Luego, en el paso 2, convertiremos esto en un tipo de variable de fecha y hora (DATETIME). Asignaremos valores “falsos” de fecha y minuto, ya que queremos valores generales por hora en todo el conjunto de datos.
  • Cantidad de colisiones: calculado en el paso 2 utilizando la función COUNT(). Esto podría ser reemplazado por cualquier variable numérica que desees calcular puntos de alta concentración a partir de ella.
WITH --Paso 1: Crear una geometría de punto y extraer el campo de la hora de las colisiones de datos AS ( SELECT   ST_GEOGPOINT(longitud, latitud) AS geom,   CASE     WHEN LENGTH(crash_time) = 5 THEN CAST(LEFT(crash_time,2) AS INT64)     ELSE CAST(LEFT(crash_time,1) AS INT64) END AS hora FROM   `yourproject.tuconjuntodedatos.colisiones_nuevayork`) --Paso 2: Convertir en un índice espacial H3, contar las colisiones por hora/por celda y crear una marca de tiempoSELECT `carto-un`.carto.H3_FROMGEOGPOINT(geom, 9) AS h3, COUNT(hora) AS cantidad_colisiones, DATETIME(2023, 1, 1, hora, 0, 0) AS tiempoFROM colisionesGROUP BY hora, h3   

Observa los resultados en el mapa a continuación, o ábrelo en pantalla completa aquí.

Paso 2: Ejecutar Clusters Espacio-Tiempo

En este siguiente paso, ejecutaremos la función Getis Ord SpaceTime, disponible a través del módulo de estadísticas de nuestra caja de herramientas de análisis en el módulo de estadísticas tanto para H3 como para Quadbin.

SELECT * FROM `carto-un`.carto.GETIS_ORD_SPACETIME_H3((   SELECT ARRAY_AGG(STRUCT(h3, time, collision_count)) AS input_data   FROM yourproject.yourdataset.input_data), 3, 'HOUR', 1, 'triangular', 'triangular');   

Adapte la consulta de entrada en función de los datos que preparó en el paso 1, y luego seleccione sus parámetros de punto caliente:

  1. Tamaño del vecindario que se tendrá en cuenta para calcular el valor Gi* (aquí usamos 3); esto se mide en anillos K. Un valor de anillo K de 1 incluye las 6 celdas (u 8 para un índice Quadbin) que bordean inmediatamente esa celda. Un valor de 2 incluye las celdas que bordean esas celdas inmediatas, y así sucesivamente.
  2. Unidad de tiempo es la unidad de tiempo utilizada. Puede elegir entre las opciones año, trimestre, mes, semana, día, hora, minuto o segundo.
  3. Intervalo de tiempo es el número de intervalos adyacentes en el dominio del tiempo que se tendrán en cuenta para calcular el valor Gi*, medido en las unidades de tiempo especificadas. Aquí, estamos usando 1 hora.
  4. La función Kernel describe los pesos espaciales asignados a las celdas a lo largo del anillo K; puede definir cuánto afecta su proximidad a la celda de entrada al resultado del análisis. Aquí usamos triangular, lo que significa que las celdas más alejadas de la celda central tienen un peso mucho menor. Otras opciones incluyen uniforme, triangular, cuadrático, cúbico o gaussiano.
  5. El núcleo de tiempo es similar, pero se aplica a los pesos temporales.

Para obtener más información, consulte la documentación completa de esta función aquí.

Paso 3: Interpretando los resultados

La salida del paso 2 será una consulta que incluye el ID del índice (H3/Quadbin), la fecha/hora, el valor p y GI*. En esta etapa, recomendamos guardar esta consulta en una tabla.

El valor p es el valor de significancia que puede permitirnos rechazar la hipótesis nula de nuestro análisis. Entonces, si nuestra hipótesis nula fuera “no hay agrupamiento espacio-temporal de colisiones”, entonces donde las celdas caen por debajo de un umbral establecido, podemos rechazar esto. Normalmente, ese umbral será 0.01 o 0.05, asociado a un nivel de confianza del 99% o 95%, respectivamente.

El valor GI* indica la fuerza del agrupamiento. Los valores positivos indican un agrupamiento espacial fuerte de valores positivos en relación con el conjunto de datos más amplio, mientras que los valores negativos indican lo contrario.

Entonces, si estamos interesados en mapear agrupamientos estadísticamente significativos de valores altos, querríamos ejecutar lo siguiente:

SELECT * FROM yourproject.yourdataset.youroutputtable WHERE p_value <= 0.05 AND GI > 0   

¿Los resultados? ¡Míralos a continuación!

Abre en pantalla completa aquí.

Hemos hecho esta visualización aún más fácil de usar e interactiva al incorporar Parámetros SQL. Estos te permiten agregar marcadores de posición en tu SQL (ver a continuación: {{time_from}} y {{time_to}}) para permitir que los usuarios finales interactúen con tus datos de manera controlada. Aquí, pueden ver el valor promedio de GI* durante un período de tiempo específico, tal vez en la hora punta o tarde en la noche.

SELECT INDEX AS h3, *, EXTRACT(hour FROM   date) AS hour FROM yourproject.yourdataset.youroutputtable WHERE p_value <= 0.1 AND gi >= 0 AND (EXTRACT(hour FROM date) >= {{time_from}} AND EXTRACT(hour FROM date) <= {{time_to}})   

Agrupamiento espacio-temporal para la toma de decisiones basada en datos

La agrupación espacio-temporal es fundamental para las empresas que buscan extraer información útil de sus datos. Al examinar tanto las dimensiones espaciales como temporales, puedes descubrir tendencias, optimizar operaciones y tomar decisiones más informadas que impulsen el crecimiento.

¡Inscríbete para obtener una prueba gratuita de 14 días con CARTO hoy mismo y comienza tu viaje hacia la Inteligencia de Ubicación!

Artículo originalmente publicado aquí. Repostead con permiso.

We will continue to update Zepes; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

Inteligencia Artificial

Dando a los usuarios más de lo que pueden manejar

¿Están los archivos de inteligencia artificial de Microsoft creando problemas de seguridad para los clientes?

Inteligencia Artificial

Gestión de modelos para los modelos afinados de LoRA utilizando Llama2 y Amazon SageMaker

En la era del big data y la inteligencia artificial, las empresas buscan constantemente formas de utilizar estas tecn...

Inteligencia Artificial

IA generativa y agentes multimodales en AWS La clave para desbloquear nuevo valor en los mercados financieros

Los datos multimodales son un componente valioso de la industria financiera, que abarca datos de mercado, económicos,...

Inteligencia Artificial

Gafas de realidad virtual para ratones crean escenarios inmersivos para la investigación cerebral

Investigadores de la Universidad Northwestern desarrollaron gafas de realidad virtual para ratones.

Inteligencia Artificial

Revelando los secretos de las neuronas multimodales Un viaje desde Molyneux hasta los Transformadores

Los Transformers podrían ser una de las innovaciones más importantes en el dominio de la inteligencia artificial. Est...