Misura l'uniformità della distribuzione dei punti in un quadrato 2D


11

Ho un quadrato 2D e ho una serie di punti al suo interno, diciamo 1000 punti. Ho bisogno di un modo per vedere se la distribuzione dei punti all'interno del quadrato è diffusa (o più o meno uniformemente distribuita) o stanno tendendo a riunirsi in qualche punto all'interno del quadrato.

Ho bisogno di un modo matematico / statistico (non di programmazione) per determinarlo. Ho cercato su Google, ho trovato qualcosa come la bontà di adattamento, Kolmogorov, ecc., E mi chiedo solo se ci sono altri approcci per raggiungere questo obiettivo. Ne ho bisogno per la carta di classe.

Ingressi: un quadrato 2D e 1000 punti. Output: sì / no (sì = distribuito uniformemente, no = raccolta in alcuni punti).


1
Non hai articolato abbastanza precisamente ciò che è "uniformemente distribuito" per te. Vuoi dire cubo uniforme uniformemente piastrellato 2D o qualcos'altro? Ad esempio, catena di punti equidistanti? o un cerchio di punti? In un certo senso, anche queste cifre sono spread uniformi.
ttnphns,

3
@ttnphns In questo contesto, "uniforme" ha un significato convenzionale ben consolidato. Corrisponde a un processo di Poisson con intensità costante. È spesso noto come "CSR" completamente spazialmente casuale .
whuber

2
@Van Vuoi ricercare "processi di punti spaziali". Le buone parole chiave includono "funzione Ripley K", "CSR" e "Poisson". Un riferimento accessibile per te sarebbe O'Sullivan & Unwin, Analisi delle informazioni geografiche. Un classico è Ripley, Statistiche spaziali : si concentra sui processi puntuali. Per le applicazioni, dai un'occhiata a CrimeStat . Se ti senti a tuo agio R, ci sono molti strumenti per questo compito .
whuber

Risposte:


5

Penso che l'idea di @John di un test chi = quadrato sia una strada da percorrere.

Vorresti le patch su 2-d, ma vorresti testarle usando un test chi-quadro a 1 via; vale a dire, i valori previsti per le celle sarebbero dove N è il numero di celle.1000N

Ma è possibile che un diverso numero di cellule dia conclusioni diverse.

Un'altra possibilità è calcolare la distanza media tra i punti e quindi confrontarla con i risultati simulati di quella media. Ciò evita il problema di un numero arbitrario di celle.

EDIT (altro sulla distanza media)

Con 1000 punti, ci sono distanze a coppie tra i punti. Questi possono essere calcolati ciascuno (usando, diciamo, la distanza euclidea). Queste distanze possono essere mediate.1000*9992

Quindi è possibile generare N (un numero elevato) di insiemi di 1000 punti distribuiti uniformemente. Ognuno di questi set N ha anche una distanza media tra i punti.

Confronta i risultati per i punti effettivi con i punti simulati, sia per ottenere un valore p o semplicemente per vedere dove cadono.


Concordo sul fatto che un chi-quadrato a un campione ("test del chi-quadrato di accordo") sia tra i modi ragionevoli. Ma puoi approfondire la tua proposta di "distanza media"? Non l'ho capito del tutto.
ttnphns,

@ttnphns, quelli utilizzati nell'analisi spaziale sono il test del vicino più vicino (noto anche come test di Clark ed Evans), oppure K. di Ripley. Vedi la libreria R spatstat o la documentazione di CrimeStat per esempi. Un'altra possibilità basata sulla simulazione sono i test di "scansione", ma questi non si basano su distanze medie.
Andy W,

3

Un'altra possibilità è un test Chi-Squared. Dividi il quadrato in toppe non sovrapposte di uguali dimensioni e verifica i conteggi dei punti che cadono nelle toppe rispetto ai loro conteggi previsti in un'ipotesi di uniformità (l'aspettativa per una patch è total_points / total_patches se sono tutte uguali) e applica il test chi-quadrato. Per 1000 punti 9 patch dovrebbero essere sufficienti, ma potresti voler usare più granularità a seconda dell'aspetto dei tuoi dati.


1
Penso che tu stia pensando a qualcosa, ma una bontà di chi-quadrato adatto che confronta i conteggi effettivi in ​​ogni cella con un conteggio atteso di celle uguali sarebbe ciò che vorresti. L'uso di un test di emergenza NON verificherebbe se ci fosse una distribuzione uniforme tra le tue celle, solo se la riga dipendesse dalla colonna.
Giovanni,

Inoltre, il test chi-quadrato ti direbbe solo se non fossero uniformi tra le celle selezionate. Non ti direbbe se fossero uniformi.
Giovanni,

Sì, intendevo i conteggi rispetto ai loro conteggi previsti con un'ipotesi nulla di uniformità, le mie scuse se non fosse chiaro. Puoi semplicemente visualizzarlo come una tabella che aiuta a capire cosa sta succedendo per i non iniziati! E ovviamente sei limitato al test contro le celle che selezioni piuttosto che all'uniformità in senso astratto
Ben Allison,

@John, in genere quando si esegue questo "test di dispersione" si esegue in genere un test a due facciate. Se volevi davvero vedere se lo schema era più uniforme del previsto per caso, potresti semplicemente vedere se il test del chi-quadrato è caduto nella coda sinistra della distribuzione (a qualunque cut-off preferisci).
Andy W,

Andy, dovresti fornire una risposta che descriva in dettaglio questa bontà del test di adattamento. In genere i test su due lati verificano solo due diverse alternative a null ma non possono ancora dimostrare il null. La tua proposta è intrigante.
Giovanni,

1

Perché non usare il test Kolmogorov-Smirnov? Questo è quello che farei, soprattutto considerando che la dimensione del tuo campione è abbastanza grande da compensare la mancanza di potenza.

In alternativa, potresti fare qualche simulazione. Non è rigoroso, ma fornisce alcune prove del fatto che i dati siano distribuiti uniformemente.


@whuber L'estensione bidimensionale di KS è ben nota (vedi qui ). In questo caso, stiamo studiando se questi 1000 disegni (coordinate (x, y)) possano essere disegnati dalla distribuzione uniformemente bidimensionale - almeno è così che ho letto "distribuito uniformemente". @Giovanni avrei potuto esprimermi goffamente (né la matematica né l'inglese sono le mie prime lingue). Ciò che intendevo era che il valore p esatto può essere calcolato usando un test come KS, mentre il valore p (o qualunque cosa tu chiami l'equivalente) tende asintoticamente solo quando si eseguono simulazioni.


Perché la simulazione non dovrebbe essere rigorosa?
Giovanni,

1
Potresti spiegare come il test KS - che è destinato a serie di numeri reali che si presume siano i risultati di una variabile casuale continua - verrebbe applicato a questo set di dati spaziali ?
whuber

@whuber Ho modificato la mia risposta per provare a fornire risposte per la tua risposta. Migliore.
abaumann,

@Giovanni ho provato a spiegare cosa intendevo dire. Migliore.
abaumann,
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.