Come raggruppare i punti in base alla densità del kernel?


10

Ho un grande set di dati con 36k punti che rappresentano gli usi del territorio commerciale, ognuno con un campo contenente il metraggio quadrato. Ho eseguito un'analisi della densità del kernel su questo set di dati, producendo un raster che mostra la densità del metraggio commerciale quadrato sull'intera area metropolitana. Devo dividere questo raster in regioni corrispondenti ai massimi locali, che chiamo "centro". Ho già determinato le posizioni dei centri e ora devo fare una delle due cose:

  • utilizzare uno strumento di raggruppamento dei punti, come "partizionamento attorno ai medoidi", per raggruppare i punti in gruppi attorno ai centri che ho identificato. Il problema con questo metodo è che è intenso dal punto di vista computazionale, e ancora di più se provo ad usare una matrice di dissomiglianza per ponderare i punti in base alle dimensioni.

  • in qualche modo dividere il raster di densità del kernel (che assomiglia approssimativamente a un raster di terreno) in singole "colline" attorno a ciascun centro. Ma non riesco a pensare a nessuno strumento per farlo.

Questo problema mi ha afflitto per un po ', e speravo di essere in grado di eseguire il metodo di clustering in R, ma richiede molto tempo e sto finendo il tempo. Qualcuno conosce un metodo semplice per dividere i raster di densità in quartieri di intensità o per raggruppare rapidamente grandi set di dati?


1
Questa domanda è strettamente correlata: stats.stackexchange.com/questions/13995/…
whuber

1
E anche pubblicato da me, a quanto pare.
Patrick,

sarebbe 1 pt per Patrick credo .....
B

Risposte:


6

La discussione che segue un post strettamente correlato ha rivelato una soluzione semplice ed efficace : trovare le "colline", capovolgere la griglia (negandone i valori) e trovare dei bacini idrografici. Le colline sono lavandini e i confini dello spartiacque dividono la griglia in quei lavandini.


Questa soluzione è semplice, veloce ed esattamente quello che stavo cercando. Grazie.
Patrick,

3

La risposta più semplice sarebbe quella di utilizzare una soglia per mascherare le aree che scendono al di sotto della soglia. Questo dovrebbe darti aree distinte che circondano i tuoi centri. Quindi dovrebbe essere in grado di convertire quelle aree in forme.

È inoltre possibile trovare strumenti di statistiche spaziali: analisi di clustering su dati raster una discussione utile di un problema simile.


Sì, questa è una discussione molto rilevante! Sto leggendo la tua tesi di laurea magistrale e proverò alcuni dei metodi.
Patrick,

2
L'uso di una soglia probabilmente non funzionerà qui, poiché sto cercando di distinguere i centri da altri centri immediatamente adiacenti. Nel nucleo della città, il confine tra i due avrà una densità molto elevata, ma nella periferia suburbana, avrà una densità molto bassa. Ma spero che l'uso del secondo derivato sia efficace.
Patrick,

3

Penso che dovresti tornare al tuo problema iniziale: trova gruppi di metrature commerciali in un'intera regione metropolitana.

Presumo che i tuoi punti siano centroidi di pacchi con valori di metratura commerciale? Presumo che tu possa avere anche uno strato poligonale di pacchi con metratura totale quadrata per ogni pacco? Questo ti dà un set di casi (i centroidi) e una popolazione (i poligoni dei pacchi) rispettivamente per il metraggio commerciale e il metraggio quadrato.

Vai a prendere SatScan http://www.satscan.org/ ed esegui uno spazio distribuito solo su modello Poisson e avrai i tuoi cluster di metraggio commerciale quadrati in un ordine piuttosto rapido. (Puoi anche usare la metratura della terra come tua popolazione piuttosto che la metratura dello spazio edilizio. Potrebbe anche essere la popolazione migliore.)


Hai ragione nel dire che i punti sono centroidi, ma sfortunatamente il set di dati è stato compilato da altri membri del livello pacchi di ciascuna contea e distribuito solo come punti. Ma SatScan sembra un software molto utile, quindi terrò conto di altre applicazioni.
Patrick,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.