Gibt es ein Tool für kostenlose aggregierte Punkte für ArcGIS 10?


10

Ich muss eine Getis-Ord-Analyse durchführen, aber zuerst muss ich meine Punkte aggregieren. Ich kenne XToolsPro, aber die Funktion für aggregierte Punkte ist gesperrt und Sie müssen eine Lizenz erwerben, um sie verwenden zu können. Ich frage mich, ob es ein kostenloses Tool oder eine Problemumgehung in ArcMap gibt, die mir fehlt, um Punkte zu aggregieren.

Einige Zusammenhänge: Was ich habe, sind über 8.000 Punkte, von denen viele unterschiedliche Attribute haben, aber möglicherweise denselben (ungefähren) räumlichen Standort haben. Für diese Analyse muss ich nur alle Punkte überlappen, die sich überlappen, basierend auf einem Feld, das einen zu summierenden numerischen Wert enthält. Zum Beispiel:

Point A overlaps Point B and Point C.  
Point A field value = 1.4
Point B = 2.4, and 
Point C = 5.2.  

Das Aggregat der Punkte A, B und C würde Punkt D mit einem Wert von 9,0 zurückgeben

Ich hoffe das macht Sinn. Vielleicht könnte ich mit etwas wirklich Grundlegendem davonkommen, habe es aber noch nicht zusammengesetzt. Jede Hilfe, die Sie anbieten können, wäre dankbar!

Antworten:


13

ArcGIS v10 erledigt dies. Führen Sie zuerst "XY-Koordinaten hinzufügen" aus. Führen Sie dann "Auflösen" aus, wählen Sie "Punkte_X" und "Punkt_Y" als Auflösungsfelder aus und fügen Sie ein Statistikfeld "Summe" hinzu. Ich habe es gerade an überlappenden Punkten getestet. Die Ausgabe hat an jeder Überlappungsstelle einen einzelnen Punkt, während das numerische Feld für diese Stelle summiert wird.


+1 Es ist schön zu hören, dass ESRI diese Funktion 10 Jahre nach dem Entfernen aus ihrer Software wieder zurückgesetzt hat. (Es war in ArcView 2/3 als Teil der Tabellenzusammenfassungsoperation vorhanden.)
whuber

Danke @klewis! Eines jedoch: Die Punkte überlappen sich nicht genau (was bedeutet, dass die xy-Koordinaten nahe beieinander liegen, aber nicht gleich sind), aber ich muss nur die Punkte aggregieren, die innerhalb von 100 Fuß voneinander liegen. Es scheint nicht so, als ob die Auflösungsfunktion eine Möglichkeit darstellt, sich innerhalb einer bestimmten Entfernungsschwelle aufzulösen. Ich gehe dann davon aus, dass ich mit einer Näherungsanalyse etwas aufräumen müsste?
myClone

2
Dies ist ein kostenloses Tool, das Kmeans-Clustering zusammen mit vielen anderen Tools ausführt. Es benötigt ArcGIS 10, funktioniert jedoch mit einer ArcView-Lizenz. Ich habe die Software nicht ausprobiert, aber sie enthält Tools, die nur mit einer ArcInfo-Lizenz verfügbar sind. Sie müssen GME, R und Statconn installieren. spatialecology.com/gme/kmeans.htm BTW, Arc 10.1 haben KMeans clusering. forums.arcgis.com/threads/20288-fuzzy-c-means-cluster-analysis
klewis

6

Es gibt viele Möglichkeiten, dies zu tun. Eine einfache effiziente besteht aus:

  1. Berechnen Sie die x- und y-Koordinaten als Felder in der Attributtabelle.

  2. Verketten Sie diese Koordinaten zu einem Bezeichner.

  3. Fassen Sie die Tabelle für diesen Bezeichner zusammen und fordern Sie die Summe des numerischen Felds sowie die ersten Instanzen von x und y an.

  4. Erstellen Sie ein Punktereignisthema der Übersichtstabelle mit (x, y) als Koordinaten.

Bearbeiten

In einem Kommentar schreibt @myClone

Die Punkte überlappen sich nicht genau (was bedeutet, dass die xy-Koordinaten nahe beieinander liegen, aber nicht gleich sind), aber ich muss nur die Punkte aggregieren, die innerhalb von 100 Fuß voneinander liegen.

Im Allgemeinen gibt es keine eindeutige Lösung. Stellen Sie sich zum Beispiel drei Punkte in einer Linie vor, an denen jeder 75 Fuß von seinem Nachbarn entfernt ist:

*     *     *    
a     b     c

Gruppieren Sie alle drei trotz Abstand (a, c)> 100? Wenn nicht, welche Lösung wählen Sie: (a, b), (c) oder (a), (b, c)?

Zwei Ansätze , die in solchen Fällen unterschiedliche Antworten geben, sind:

(i) Puffern Sie alle Punkte um 50 = 100/2 Fuß und fordern Sie an, die Puffer zusammenzuführen. Verbinden Sie die Puffer räumlich wieder mit den Punkten: Dadurch erhält jeder Punkt das Attribut des zusammengeführten Puffers, der ihn enthält. Dies erreicht das Ziel von Schritt (2) in meiner ursprünglichen Lösung. Fahren Sie von dort genau wie zuvor fort. Im Beispiel würde dies a, b und c zusammenfassen.

(ii) Erstellen Sie ein 100 x 100 Fuß-Raster und identifizieren Sie die Punkte anhand ihrer Rasterzellen. Dies erfordert nicht das tatsächliche Zeichnen des Gitters oder sogar das Speichern seiner Merkmale, da die Zelle, in der (x, y) liegt, durch das geordnete Paar (Etage ((x-x0) / 100), Etage ((y-y0)) bestimmt wird ) / 100)) wobei (x0, y0) ein beliebiger Gitterursprung ist. Kombinieren Sie diese Koordinaten, um die Zelle zu identifizieren, und erreichen Sie erneut Schritt (2) in meiner ursprünglichen Lösung. Gehen Sie wie zuvor vor.

Es ist klar, dass Methode (ii) nicht alle Punktpaare innerhalb von 100 Fuß ganz aggregiert, da sie Paare bis zu 100 * Sqrt (2) = 141 Fuß voneinander aggregieren kann. Sie können dies kompensieren, indem Sie die Rastergröße auf 100 / Sqrt (2) = 71 Fuß reduzieren. Einige Paare innerhalb von 100 Fuß werden jedoch nicht aggregiert. Wähle dein Gift.

Beachten Sie, dass die Lösungen in Methode (ii) vom Gitterursprung und -abstand abhängen. Bei Verwendung eines 100-Fuß-Gitters würde es je nach Herkunft entweder {(a, b), (c)} oder {(a), (b, c)} ergeben. Bei Verwendung eines 71-Fuß-Gitters würden alle drei Punkte unabhängig von ihrer Herkunft getrennt bleiben.

Es gibt andere Methoden , die ich in Gruppen zusammenfassen werde:

(iii) Verwenden Sie ein statistisches Clustering-Verfahren , z. B. k-means oder hierarchisches Clustering, um die Aufgabe zu erledigen. Auf unserer Schwesterseite stats @ SE finden Sie zahlreiche praktische Informationen dazu . In der Regel akzeptiert die Statistiksoftware (id, x, y) Tripel als Eingabe und gibt eine Tabelle mit (id, cluster) Tripeln aus (oder kann zur Ausgabe überredet werden). Fügen Sie diese Ausgabetabelle wieder der Punktattributtabelle hinzu und bringen Sie uns erneut zu Schritt (2) in der ursprünglichen Lösung usw. zurück.

(iv) Einige geostatistische Software wie GSLib enthält verschiedene "Deklarations" -Routinen, mit denen Daten für Variographie und Kriging vorbereitet werden sollen. Ihre Ausgabe kann normalerweise wieder in die GIS-Software importiert und in eine Punktebene umgewandelt werden.

Mit den bisher beschriebenen Methoden haben Sie die volle Kontrolle über die Vorgänge und können Ihre Arbeit sachkundig und professionell ausführen (ohne Ihre Softwaretools rückentwickeln zu müssen).

Abschließend sei noch darauf hingewiesen

(v) Aktuelle Kopien von ArcGIS verfügen über ein Tool zum Deklarieren . Soweit ich mich erinnere, ist unklar, wie es funktioniert. Sie müssen den zugrunde liegenden Code lesen, um herauszufinden, was los ist.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.