Eu tenho um conjunto de dados de 655 pares de lat / long que gostaria de dividir em cerca de 100 grupos. Um grupo deve ter de 5 a 10 pares geograficamente próximos um do outro. Grupos densos devem ter mais pontos, grupos esparsos devem ter menos. Por exemplo, os agrupamentos urbanos devem ser maiores, os rurais, menores.
Existe um algoritmo estabelecido para fazer esse tipo de agrupamento, ou terei que projetá-lo do zero?
Estou usando a API do Google Maps v3 para exibir esses dados, mas como é um conjunto de dados fixo, estou preparado para fazer uma análise de números offline.
geoprocessing
algorithm
google-maps-api
clustering
Graeme Hilton
fonte
fonte
R
para usá-las: você precisa aprender a ler suas coordenadas, aplicar uma rotina de cluster e escrever seus resultados (se necessário) para um arquivo que seu GIS pode pós-processar.Respostas:
você pode conferir o algoritmo de agrupamento k-means aqui .
implementação do kmeans-postgresql aqui .. e eu recentemente encontrei este tópico Cluster espacial com PostGIS, você pode conferir aqui no @ Mike Toews com a função ST_MinimumBoundingCircle ..
fonte