Jak grupować punkty na podstawie gęstości jądra?

10

Mam duży zestaw danych z 36 tys. Punktów reprezentujących użytkowanie gruntów komercyjnych, każdy z polem zawierającym materiał kwadratowy. Przeprowadziłem analizę gęstości jądra dla tego zestawu danych, tworząc raster pokazujący gęstość komercyjnych powierzchni kwadratowych w całym obszarze metra. Muszę podzielić ten raster na regiony odpowiadające lokalnym maksimom, które nazywam „centrum”. Ustaliłem już lokalizację centrów, a teraz muszę zrobić jedną z dwóch rzeczy:

  • użyj narzędzia grupowania punktów, takiego jak „partycjonowanie wokół medoidów”, aby pogrupować punkty w klastry wokół zidentyfikowanych centrów. Problem z tą metodą polega na tym, że jest ona intensywna obliczeniowo, a tym bardziej, jeśli spróbuję użyć macierzy odmienności do ważenia punktów według wielkości.

  • w jakiś sposób podziel raster gęstości jądra (który z grubsza przypomina raster terenu) na poszczególne „wzgórza” wokół każdego centrum. Ale nie mogę wymyślić żadnego narzędzia do tego.

Ten problem trapił mnie od jakiegoś czasu i miałem nadzieję, że będę w stanie wykonać metodę klastrowania w R, ale jest to czasochłonne i brakuje mi czasu. Czy ktoś zna prostą metodę podziału rastrów gęstości na dzielnice intensywności lub szybkiego grupowania dużych zbiorów danych?

Patrick
źródło
1
To pytanie jest ściśle powiązane: stats.stackexchange.com/questions/13995/…
whuber
1
A także opublikowane przeze mnie, jak się okazuje.
Patrick,
byłoby to 1 pkt dla Patricka, myślę .....
BWill

Odpowiedzi:

6

Dyskusja na temat ściśle powiązanego postu ujawniła proste, skuteczne rozwiązanie : znaleźć „wzgórza”, obrócić siatkę do góry nogami (negując jej wartości) i znaleźć zlewiska. Wzgórza są zlewami, a granice zlewisk dzielą siatkę na te zlewozmywaki.

Whuber
źródło
To rozwiązanie jest proste, szybkie i dokładnie tego szukałem. Dzięki.
Patrick,
3

Najprostszą odpowiedzią byłoby użycie progu do maskowania obszarów, które spadną poniżej progu. To powinno dać ci wyraźne obszary wokół twoich centrów. Następnie powinno być możliwe przekształcenie tych obszarów w kształty.

Można również stwierdzić, statystyka przestrzenna narzędzi: analizy klastrowej na danych rastrowych pożyteczną dyskusję o podobnym problemie.

Ian Turton
źródło
Tak, to bardzo trafna dyskusja! Czytam twoją pracę magisterską i wypróbuję niektóre metody.
Patrick,
2
Użycie progu prawdopodobnie nie zadziała tutaj, ponieważ próbuję odróżnić centra od innych centrów bezpośrednio sąsiadujących. W centrum miasta granica między nimi będzie miała bardzo wysoką gęstość, ale na obrzeżach podmiejskich będzie miała bardzo niską gęstość. Mam jednak nadzieję, że użycie drugiej pochodnej będzie skuteczne.
Patrick,
3

Myślę, że powinieneś powrócić do pierwotnego problemu: znajdź skupiska komercyjnych powierzchni kwadratowych w całym regionie metra.

Zakładam, że twoje punkty to centroidy działek o wartości komercyjnej powierzchni kwadratowej? Zakładam, że możesz mieć również warstwę działek wielokątnych o całkowitej powierzchni kwadratowej dla każdej działki? To daje zestaw skrzynek (centroidy) i populację (wielokąty działek) odpowiednio dla reklamy komercyjnej i materiału kwadratowego.

Idź weź SatScan http://www.satscan.org/ i uruchom tylko model kosmiczny Poissona, a będziesz mieć swoje klastry powierzchni komercyjnych w dość szybkiej kolejności. (Możesz także użyć powierzchni ziemi jako populacji, a nie powierzchni budynku. To może być nawet lepsza populacja.)

blord-castillo
źródło
Masz rację, że punkty są centroidami, ale niestety zestaw danych został skompilowany przez innych z warstwy działek każdego hrabstwa i rozłożony tylko jako punkty. Ale SatScan wygląda na bardzo przydatne oprogramowanie, więc będę pamiętać o innych aplikacjach.
Patrick,