Quiero estimar cuántas tiendas McDonalds están a 500 metros de la tienda Burger King en Nueva York. ¿Hay alguna manera de hacer esto usando herramientas geoespaciales?

Sí, puede hacerlo siempre que tenga los valores de ubicación (largo-largo) de Burger King y McDonalds en Nueva York.

Puede usar el paquete rgeos en R (un lenguaje estadístico) para obtener su información. Tuve una situación similar en el pasado para estimar el número de ubicaciones alrededor de una ubicación determinada.

A continuación se muestra la función que debe usar.

  1. rgeos :: gWithinDistance – Debe pasar esta función por debajo de tres para sus requisitos
    1. Un objeto espacial en forma de spatialPointsDataFrame para ubicaciones de McDonalds.
    2. Otro objeto espacial en forma de spatialPointsDataFrame para ubicaciones de Burger King.
    3. dist – en tu caso son 500 metros.
  2. El valor de retorno es una matriz con verdadero / falso que denota si el par de la ubicación de Burger King y la ubicación de McD están dentro de 500m o no.
  3. Luego, puede sumarlo en filas o columnas para obtener el número de ubicaciones de McD para una ubicación de Burger King determinada y viceversa.

Asegúrese de que los objetos espaciales que creó se transforman utilizando spTransform con el mismo datum en el sistema de referencia de coordenadas y la métrica para la distancia utilizada en la proyección de lat largo es en metros. Tenga en cuenta que la distancia es una distancia directa entre las dos ubicaciones como en un radio de 500 m, pero no la distancia de viaje real que podría ser superior a 500 m.

Una entidad con la que estoy asociado ha ideado un método novedoso para hacer un análisis geoespacial que puede reducir el problema anterior a una sola operación simple de SQL en un gran conjunto de datos, reduciendo la tarea a una tarea simple de escribir una breve consulta SQL para producir su responder en fracción de segundo. Y la tecnología funciona con aprox. ubicaciones también! Si le interesa, envíeme un mensaje a [correo electrónico protegido] y con gusto lo ayudaré con este problema.