Мне нужно сгруппировать набор данных с координатами широты и долготы. Я использую python в качестве языка и планирую использовать DBSCAN, поскольку я не хочу указывать количество кластеров.
Цель и задача - иметь возможность вводить большой набор данных с широтой и долгими координатами, к которым прикреплено множество функций, и назначать группы кластеров, которые будут возвращены. Исходная база данных, которая содержит записи в форме [долгая долгая характеристика1, характеристика2 ....], должна быть изменена новым полем с названием «группа кластеров»: [долгая долгая группа кластеров особенность1, характеристика2 ....]. Это поможет мне определить, какие точки данных сгруппированы близко друг к другу, без необходимости наносить на карту. Я надеюсь, что выбросам будут предоставлены отдельные идентификаторы групп, а точкам, которые в значительной степени сгруппированы вместе, будет предоставлен один и тот же идентификатор группы.
Моим вводом в DBSCAN будут координаты x, y после преобразования lat, long -> x, y и пренебрежения координатой z. Я использую:
http://scikit-learn.org/stable/modules/generated/sklearn.cluster.DBSCAN.html#sklearn.cluster.DBSCAN http://scikit-learn.org/stable/auto_examples/index.html
Мне сложно понять, как настроить вход для этой функции. Могу ли я ввести координаты x, y? Будет ли это список кортежей? Если бы кто-то мог помочь мне визуализировать это, это было бы большим подспорьем.
Кроме того, не могли бы вы объяснить, чем DBSCAN будет отличаться от иерархической кластеризации?