Кластеризация пространственных данных в R

12

У меня есть набор месячных данных о температуре поверхности моря (SST), и я хочу применить некоторую кластерную методологию для обнаружения регионов с подобными закономерностями SST. У меня есть набор ежемесячных файлов данных, работающих с 1985 по 2009 год, и я хочу применить кластеризацию к каждому месяцу в качестве первого шага.

Каждый файл содержит данные в сетке для 358416 точек, где приблизительно 50% являются земельными участками и помечены значением 99,99, которое будет NA. Формат данных:

   lon     lat   sst
-10.042  44.979  12.38
 -9.998  44.979  12.69
 -9.954  44.979  12.90
 -9.910  44.979  12.90
 -9.866  44.979  12.54
 -9.822  44.979  12.37
 -9.778  44.979  12.37
 -9.734  44.979  12.51
 -9.690  44.979  12.39
 -9.646  44.979  12.36

Я попробовал метод кластеризации CLARA и получил некоторые, по-видимому, хорошие результаты, но мне также кажется, что это просто сглаживание (группирование) изолиний. Тогда я не уверен, что это лучший метод кластеризации для анализа пространственных данных.

Есть ли другой метод кластеризации, посвященный этому типу наборов данных? Некоторая ссылка была бы хороша, чтобы начать читать.

Заранее спасибо.

pacomet
источник
2
Вам следует проверить файл cran.r-project.org/web/views/Spatial.html . Есть несколько пакетов, которые имеют название кластера, что, вероятно, будет интересно.
Энди W
Вы нашли какой-нибудь хороший пакет R для кластеризации пространственных данных?
Каптан
@kaptan К сожалению, я не сделал, и это один из
pacomet
(x,y,T)R3R

Ответы:

2

Существует другой подход для масштабируемой кластеризации, подход «разделяй и властвуй», параллельная кластеризация и инкрементная. Это для общего подхода после того, как вы можете использовать обычные методы кластеризации. Хороший метод кластеризации, который я действительно ценю, - это DBSCAN (пространственная кластеризация приложений с шумом на основе плотности), это один из наиболее часто используемых алгоритмов кластеризации.

404Dreamer_ML
источник
Хорошо, я поищу DBSCAN и попробую. Спасибо
pacomet
Если какой-то ответ помог вам или вы нашли другой способ, лучше дать нам, так что все сообщество воспользуется этим. Или выберите ответ, чтобы закрыть вопрос, спасибо.
404Dreamer_ML
Извините за задержку с ответом, но дело в том, что у меня не так много времени, чтобы попробовать dbscan, и первые попытки привели к проблеме с памятью. R говорит, что не может выделить вектор. Я начинаю с разнесенной на 4 км сетки с 779191 точками, которая заканчивается при удалении наземных (не действительных) точек SST на 300000 точек. Может быть, я не получаю правильный подход, любая подсказка будет оценена.
пакомет
1
Привет, я до сих пор не могу найти решение. Я прочитал несколько документов о DBSCAN и у меня есть несколько вопросов о. Как найти минимальное расстояние с R? Поскольку мои данные представляют собой трехмерную долготу, широту и температуру, какое «расстояние» мне следует использовать? какой размер связан с этим расстоянием? температура? Есть ли способ определить минимальное количество точек для кластера? Поиск в Google Я не смог найти пример R для использования dbscan в наборе данных, похожем на мой, знаете ли вы какой-либо веб-сайт с такими примерами? Так что я могу читать и пытаться приспособиться к своему делу.
Еще
0

PySAL - это хорошо документированная библиотека Python для пространственного анализа, которая имеет некоторую кластеризацию .

Еще одна библиотека python на стадии разработки, ориентированная на пространственную кластеризацию, - это clusterPy (презентация в формате PDF) .

Программное обеспечение с графическим интерфейсом GeoGrouper с более ограниченным выбором алгоритмов кластеризации, но с хорошим интерфейсом отображения .

b_dev
источник
Спасибо, я никогда не работал с питоном. Я попытаюсь найти решение R
pacomet