Створення груп точок з лат / довгих пар за допомогою R?


11

У мене є база даних, яка містить пари Lat / Long, щоб визначити розташування визначних місць. Я хотів би об'єднати визначні місця в групи по 10. Група повинна бути географічно локальною і містити рівно 10 балів. Кожна група повинна мати мінімальну площу.

Я розглянув різні реалізації в R, але жодна з них (що я бачу) не дозволяє вказати певний розмір кластера.

Я раніше запитував групування точок карти у фіксований розмір кластера? але я не думаю, що я був досить точним у своєму питанні, щоб отримати хорошу відповідь.


Географічно локальне - я думаю, я маю на увазі, що групи не повинні значно перетинатися. У моєму застосуванні (розподіл людей на групи для моніторингу) було б ідеально, якби кожна група була якомога меншою у фізичній зоні.
Мінімальна площа - знову ж таки, намагаючись звести область групи до мінімуму. Я припускаю, що це можна кількісно визначити як збереження площі кожної групи нижче визначеного порогу (щоб уникнути десятків малих груп та однієї великої).


2
Це допоможе бути трохи більш точним щодо того, що ви шукаєте. Як би ви оцінили "географічно локальну" та "мінімальну площу"?
whuber

У деяких ситуаціях "мінімальна площа" та "рівно 10 балів" не будуть взаємовиключними? Як ви можете розраховувати на те, що вони будуть використані, наприклад, у вас "мінімальна площа" 1 миля та 1 функція, яка не має інших функцій в межах 10 миль (можливо, більше)
RyanKDalton

Я очікую, що будуть деякі винятки, але з ними можна вручну впоратися. У мене є набір даних фіксованого розміру, і я не проти вручну виконувати деякі групи, але мені дуже хотілося б автоматичне рішення для решти! :)
Graeme Hilton


Опис все ще занадто "ручно-хвилястий", щоб вирішити в автоматизованому вигляді. Чи можете ви зробити дані загальнодоступними?
BradHards

Відповіді:


1

Я думаю, ви можете шукати інструмент k-найближчого сусіда. Цей тип інструменту можна використовувати для визначення 10 найближчих сусідів усіх точок вашого набору даних. Здається, для цього є кілька різних варіантів (де деякі використовують різні алгоритми або мають дещо різні функціональні можливості), і я не впевнений, який був би найкращий варіант. Але ось кілька посилань:

http://stat.ethz.ch/R-manual/R-patched/library/class/html/knn.html http://en.wikibooks.org/wiki/Data_Mining_Algorithms_In_R/Classification/kNN

Можливо, вам буде потрібно комбінувати результати з алгоритмом кластеризації або інструментом ансамблю кластерів, щоб визначити кластери точок, які мають подібні набори сусідів, щоб потрапити на класифікацію точок, де мало перекриття. Можливо, вам доведеться зробити трохи ручної роботи з результатами, але це повинно дозволяти вам автоматизувати велику частину роботи

Деякі посилання: http://jmlr.csail.mit.edu/papers/volume3/strehl02a/strehl02a.pdf http://cran.r-project.org/web/packages/clue/vignettes/clue.pdf

Можливо, ви також зможете знайти інструмент кластеризації k-означає, який зробить це все за один крок і застосує 10 балів у праві кластера (просто розділіть загальну кількість балів на 10 і виберіть це як кількість бажаних кластерів для інструмент).


Крім того, я знайшов підручник з YaRi корисним для R: ahandel.myweb.uga.edu/resources.htm
Jezibelle
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.