Finden Sie Cluster einer Punktmenge um eine andere Punktmenge aus einer anderen Ebene?

10

Ich möchte sehen, ob sich ein bestimmter Gebäudetyp (x) um einen anderen Gebäudetyp (y) gruppiert.

Die beiden Punktdateien befinden sich in verschiedenen Ebenen.

Ich kann nicht herausfinden, mit welchem ​​Tool ich dies tun würde.

Nikki
quelle

Antworten:

9

Keines der sofort einsatzbereiten Tools in ArcGIS (oder einem anderen GIS, AFAIK) erledigt die Aufgabe korrekt.

In einem solchen Problem müssen Sie quantifizieren, was Sie unter "Clustering" verstehen, und dann ein Wahrscheinlichkeitsmodell aufstellen, um zu beurteilen, ob der gemessene Grad der Clusterbildung durch zufällige Chancen verursacht worden sein könnte.

Als Beispiel für das weitere Vorgehen können Sie die Clusterbildung anhand typischer Abstände zwischen Gebäuden des Typs x und dem nächsten Gebäude des Typs y messen . Dies ist eine einfache Berechnung: Stellen Sie einfach beide Gebäudegruppen durch separate Punktebenen dar und führen Sie eine räumliche Verbindung der Ys mit den Xs durch. Die Attributtabelle, die noch einen Datensatz für jedes Gebäude vom Typ x enthält , enthält jetzt den Abstand zum nächsten y . Sie können die durchschnittliche Entfernung als Maß verwenden.

Es ist schwieriger zu testen, ob dies das Ergebnis eines Zufalls sein könnte. Eine plausible Interpretation dieser Einstellung ist , dass die frühere Anwesenheit von y - Typ Gebäuden förderte die Entwicklung von x Gebäuden relativ nahe an den y ‚s. Andernfalls könnten wir die Hypothese aufstellen, dass die Gebäude vom Typ x überall dort gebaut worden sein könnten, wo auch andere Gebäude erschienen sind. Dies führt zu dem folgenden einfachen Permutationstest . Erstellen Sie eine Punktebene aller möglichen Stellen, an denen Gebäude vom Typ x möglicherweise erschienen sind. Diese Schicht könnte die Position aller Gebäude in dem Bereich sein, der im gleichen Zeitraum wie das x errichtet wurdeGebäude waren (einschließlich der x Gebäude selbst natürlich). Räumlich treten die y - Schicht die Abstände zu den nächsten zu erhalten , y Typ Gebäude. Der Rest der Berechnung basiert auf der Attributtabelle: Die geografischen Berechnungen werden durchgeführt. Was Sie tun werden, ist wiederholt einen Zufallszahlengenerator zu verwenden, um eine einfache Zufallsstichprobe aller dieser Gebäude zu ziehen, wobei jede Stichprobe genau so viele Elemente enthält, wie Sie Gebäude vom Typ x haben . Berechnen Sie die durchschnittliche Entfernung für dieses Beispiel. Wiederholen Sie diesen Vorgang, bis Sie viele Durchschnittsentfernungsstatistiken haben. Wenn fast alle diese zufällig erhaltenen durchschnittlichen Abstände größer sind als der durchschnittliche Abstand, den Sie für das x gemessen habenWenn Sie Gebäude eingeben, können Sie daraus schließen, dass die x nicht zufällig gruppiert sind: Der Effekt ist real.

(Solche Berechnungen werden am besten auf einer Plattform programmiert, die für solche Zwecke geeignet ist, wie z. B. "R", aber fast jede Computersoftware kann in Betrieb genommen werden, sogar Excel. Die Programmierung ist sehr viel und erfordert nur das Wissen, wie man Schleifen schreibt und auswählt Elemente aus Arrays zufällig.)

Dieser Ansatz für Permutationstests ist vorprogrammierten Lösungen überlegen, da er die Muster der Gebäudeentwicklung in diesem Bereich explizit berücksichtigt. Wenn Sie dies nicht tun, oft Sie wird „signifikant“ Beweise für Clustering finden, aber man kann nichts Brauchbares daraus schließen, weil das Clustering von anderen Faktoren, wie die Muster von Straßen verursacht wurden, die Standorte Websites, die für die Entwicklung geeignet sind, und viele andere Dinge.

whuber
quelle
1
Mir ist klar, dass diese Antwort etwas abstrakt ist. Wenn ich mehr Zeit habe, werde ich versuchen, eine realistische Illustration zu erstellen.
whuber
Für diejenigen, die R verwenden, würde ich empfehlen, dem Spatstat-Paket ( cran.r-project.org/web/packages/spatstat/index.html ) einen Blick auf die Clusteranalyse zu geben.
om_henners
2

Natürlich sollte Ihre Datenanalysemethode von dem inhaltlichen Problem abhängen, das die Analyse motiviert.

Aber hier sind einige Ideen:

Von ESRI:

So funktioniert die räumliche Clusteranalyse mit mehreren Entfernungen: Ripleys k-Funktion (räumliche Statistik) funktioniert , wobei i und j in der Gleichung Ihre Gebäude x und y bezeichnen würden. Ripleys K-Funktion liefert probabilistische Schlussfolgerungen.

Aus der Informatik:

Es gibt komplexe Algorithmen für die Erkennung von Co-Location-Mustern, die Sie googeln können.

b_dev
quelle
Die "einfache Handlungsidee" ist interessant, aber Sie brauchen etwas, mit dem Sie sie vergleichen können: An sich ist es schwierig, nützliche Informationen daraus zu extrahieren. Die K-Funktion von Ripley ist ebenfalls ein nützliches Werkzeug, spiegelt jedoch in vielen Fällen lediglich die Geometrie des Datensatzes wider. Bei Häusern in einem Vorort oder auf dem Land, die dazu neigen, entlang linearer Merkmale (Straßen) zu liegen, zeigt die K-Funktion allein aus diesem Grund eindeutig eine "signifikante" Clusterbildung. Als solches offenbart es nichts Nützliches an Häusern, außer dass sie in der Nähe von Straßen gebaut wurden!
whuber
@whuber 1. Danke für die Erklärung des Problems der Ripley K-Funktion. Zweitens, wenn wir eine grafische Darstellung der Aktienkurse im Zeitverlauf sehen, können wir nach allgemeinen Trends nach oben oder unten oder nach dem Zufallsprinzip suchen. Außerdem können wir Zeiten ermitteln, in denen es zu starken Abnahmen oder Erhöhungen gekommen ist, und nach dem Grund fragen. Ein Diagramm darüber, wie sich die Konzentration von Gebäuden ändert, wenn sich die Entfernung ändert, kann auf dieselbe Weise verwendet werden. Es kann verwendet werden, um nach Konzentrationsspitzen zu suchen, was ein Beweis für eine zufällige Verteilung ist, und es kann auch verwendet werden, um die weitere Untersuchung von merkwürdigen Spitzen zu konzentrieren.
b_dev
Du hast recht. Mein Punkt ist, dass die Handlung an und für sich nichts über Clustering aussagt. Vielleicht ist eine gute Analogie (anstelle von Aktienkursen) die Choroplethenkarte der Anzahl von Nierenkrebsfällen nach Bundesstaat 2000-2010 in den USA. Auch das sagt nichts über (geografische) Clusterbildung aus, da es keine Unterschiede in der Bevölkerung zwischen Staaten berücksichtigt. In ähnlicher Weise benötigt ein Cross-K-Diagramm eine geeignete Normalisierung oder Referenz, um interpretierbar zu sein. Die allgemeinen Trends, Spitzen usw. spiegeln möglicherweise nur die geografischen Muster aller Gebäudestandorte wider.
whuber
@whuber Du hast recht. Nachdem ich Ihren obigen Kommentar gelesen habe, habe ich entschieden, dass meine einfache Plot-Idee nicht viele Informationen liefert, zumindest wie sie beschrieben wurde. Deshalb habe ich sie entfernt, um die Leute nicht zu verwirren. Ich glaube jetzt, dass die Joint Count-Statistik die einfachste Methode ist, um das Problem anzugehen.
b_dev
2

Ich habe selbst noch nie eine Clusteranalyse in GIS durchgeführt. Wäre es jedoch einfacher, wenn Sie Punkte / Polygone erstellen würden, um einen bestimmten Cluster aus X und / oder Y darzustellen? Wenn Sie beispielsweise Punkte erstellen würden, um Gebäude Y zu kennzeichnen, könnten Sie dies dann tun verwenden Sie die Punktentfernung Werkzeug , um alle Punkte des Gebäudes X innerhalb einer bestimmten Entfernung von Ihrem Ursprung Standorten zu erhalten.

Andernfalls wird durch Erstellen eines Puffers um Gebäude vom Typ Y und Auswählen aller Gebäude vom Typ X das gleiche Ergebnis erzielt, wenn Sie nicht über ArcInfo verfügen.

Nathanus
quelle
0

Sie können beide Ebenen kombinieren, indem Sie eine Binärspalte (0,1) hinzufügen, um festzustellen, ob das Gebäude aus X oder Y stammt.

Von dort aus konnten Sie mit GeoDa die lokale räumliche Autokorrelation (Clustering) identifizieren und feststellen, ob sie hoch-niedrig (eine Schicht um die andere Schicht gruppiert) niedrig-hoch (umgekehrt) oder hoch-hoch oder niedrig-niedrig (selbst-) war. Clustering). Benutzerhandbuch hier (.pdf)

Raphael
quelle