Знаходження кластерів однієї сукупності точок навколо іншого набору точок з іншого шару?


10

Я хочу дізнатися, чи існує кластеризація певного типу будівель (x) навколо іншого типу будівель (y).

Два точкові файли знаходяться в різних шарах.

Я не можу зрозуміти, який інструмент я би використав для цього.

Відповіді:


9

Жоден нестандартний інструмент в ArcGIS (або будь-який інший GIS, AFAIK) не виконає цю роботу правильно.

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

Як приклад того, як діяти, ви можете вибрати вимірювання кластеризації за типовими відстанями між будівлями типу x і найближчою будівлею типу y . Це простий розрахунок: просто представляйте обидва набори будівель окремими точковими шарами та виконуйте просторове приєднання Y до X. Таблиця атрибутів, яка все ще містить один запис для кожної будівлі типу x , тепер буде включати відстань до найближчого y . Ви можете використовувати середню відстань як міру.

Тестування, чи це може бути результатом випадковості, складніше. Одне з правдоподібних тлумачень цього параметра полягає в тому, що більш рання наявність будівель типу y стимулювало розвиток будівель типу x відносно близько до y . В іншому випадку ми можемо припустити, що будинки типу x могли бути побудовані де завгодно, щоб з’явилися й інші будівлі. Це призводить до наступного простого тесту на перестановку . Створіть точковий шар усіх можливих місць, де могли з’являтися будівлі типу x . Цей шар може бути розташуванням усіх будівель у районі, зведених за той самий період, що і xбудівлі були ( звичайно, і самі x будівлі, звичайно). Просторово приєднуйтесь до шару y, щоб отримати відстані до найближчої будівлі типу y . Решта обчислення працює за таблицею атрибутів: виконуються географічні обчислення. Що ви будете робити, це багаторазово використовувати генератор випадкових чисел, щоб взяти просту випадкову вибірку всіх цих будівель, кожен вибірка має рівно стільки елементів, скільки будівель типу x . Обчисліть середню відстань для цієї вибірки. Повторюйте, поки не буде багато статистики середньої відстані. Якщо майже всі ці випадково отримані середні відстані перевищують середню відстань, яку ви вимірювали для xтипи будівель, ви можете зробити висновок, що х не кластеризовані випадково: ефект справжній.

(Такі обчислення найкраще запрограмовані на платформі, підходящої для таких цілей, як `R ', але практично будь-яке обчислювальне програмне забезпечення можна натиснути на сервіс, навіть Excel. Програмування дуже вимагає трохи більше, ніж знати, як писати петлі та вибирати елементи з масивів навмання.)

Такий підхід для тестування перестановки перевершує попередньо запрограмовані рішення, оскільки він чітко враховує закономірності розвитку будівель у цій галузі. Якщо ви не зробите цього, ви часто будете знайти «значне» доказ кластеризації, але ви не можете нічого корисного з цього зробити висновок, тому що кластеризація може бути викликані іншими факторами , такі , як візерунки доріг, розташування сайти, придатні для розробки та багато іншого.


1
Я усвідомлюю, що ця відповідь трохи абстрактна. Коли у мене буде більше часу, я спробую створити реалістичну ілюстрацію.
whuber

Для тих, хто використовує R, я рекомендую ознайомитись із пакетом spatstat ( cran.r-project.org/web/packages/spatstat/index.html ) для пошуку кластерного аналізу.
om_henners

2

Звичайно, ваш метод аналізу даних повинен залежати від суттєвої проблеми, що мотивує аналіз.

Але ось кілька ідей:

Від ESRI:

Як функціонує просторовий просторовий кластерний аналіз: k-функція Ріплі (просторова статистика) , де i і j в рівнянні позначають ваші будівлі x і y. K-функція Ріплі забезпечить імовірнісний висновок.

З інформатики:

Існують складні алгоритми для виявлення шаблону локального розташування, за допомогою якого ви можете перейти в Google.


"Проста ідея сюжету" цікава, але вам потрібно щось порівняти: сама по собі важко отримати з неї корисну інформацію. Функція K Ripley також є корисним інструментом, але, на жаль, у багатьох випадках вона просто відображає геометрію набору даних. З будинками в заміській або сільській місцевості, які, як правило, лежать уздовж лінійних особливостей (доріг), функція K буде чітко показувати "значну" кластеризацію лише з цієї причини. Як такий, він не виявляє нічого корисного щодо будинків, окрім того, що вони будуються біля доріг!
whuber

@whuber 1-й спасибі за пояснення проблеми K-функції Риплі. По-друге, коли ми бачимо графік цін на акції з часом, ми можемо шукати загальні тенденції вгору або вниз або випадково, також ми можемо вибирати часи, коли відбулися значні зменшення або збільшення, і запитати, чому. Сюжет того, як змінюється концентрація будівель у міру зміни відстані, може бути використаний однаковим чином. Він може бути використаний для пошуку шипів концентрації, що є свідченням проти випадкового розподілу, а також може бути використаний для подальшого дослідження цікавих шипів.
b_dev

Ти правий. Моя думка, що сам по собі сюжет нічого не говорить про групування. Можливо, гарною аналогією (а не цінами на акції) є хороша карта кількості випадків раку нирки за станом 2000-2010 рр. У США. Це також нічого не говорить про (географічне) кластеризації, оскільки воно не враховує коливання чисельності населення між державами. Аналогічно, крос-K ділянка потребує відповідної нормалізації або посилання для інтерпретації. Загальні тенденції, сплески тощо можуть просто відображати географічні закономірності всіх будівель.
whuber

@whuber Ти маєш рацію. Прочитавши ваш вище коментар, я вирішив, що моя ідея простого сюжету не надасть багато інформації, принаймні, як це було описано, тому я її видалив, щоб не бентежити людей. Зараз я вважаю, що статистика спільних підрахунків є найпростішим методом підходу до проблеми.
b_dev

2

Я ніколи сам не робив кластерний аналіз в ГІС, але чи може бути простіше, якби ви створили точки / багатокутники, щоб представити заданий кластер X і / або Y. Наприклад, якщо ви створили точки для позначення будівлі Y, ви могли б тоді скористайтеся інструментом " Відстань точок" , щоб отримати всі точки будівлі X на певній відстані від місця розташування.

В іншому випадку створення буфера навколо будівель типу Y та вибір усіх будівель типу X дозволять досягти однакового результату, якщо у вас немає ArcInfo.


0

Ви можете комбінувати обидва шари, додавши двійковий стовпець (0,1), щоб визначити, будівля походить із X чи Y.

Звідти за допомогою GeoDa можна було визначити локальну просторову автокореляцію (кластеризацію) та визначити, чи була вона високою-низькою (один шар кластеризований навколо іншого шару) низько-високою (зворотною) або високою-високою або низькою-низькою (само- кластеризація). Посібник користувача тут (.pdf)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.