Esistono infiniti modi in cui una distribuzione può essere leggermente diversa da una distribuzione di Poisson; non è possibile identificare che un insieme di dati viene estratto da una distribuzione di Poisson. Quello che puoi fare è cercare l'incoerenza con ciò che dovresti vedere con un Poisson, ma una mancanza di evidente incoerenza non lo rende Poisson.
Tuttavia, ciò di cui stai parlando verificando questi tre criteri non è verificare che i dati provengano da una distribuzione di Poisson con mezzi statistici (cioè guardando i dati), ma valutando se il processo che i dati sono generati soddisfa i condizioni di un processo di Poisson; se le condizioni fossero tutte o quasi trattenute (e ciò è una considerazione del processo di generazione dei dati), potresti avere qualcosa da o molto vicino a un processo di Poisson, che a sua volta sarebbe un modo per ottenere dati che sono disegnati da qualcosa di vicino a un Distribuzione di Poisson.
Ma le condizioni non valgono in molti modi ... e il più lontano dall'essere vero è il numero 3. Non vi è alcun motivo particolare su quella base per affermare un processo di Poisson, anche se le violazioni potrebbero non essere così gravi che i dati risultanti sono lontani da Poisson.
Quindi torniamo agli argomenti statistici che derivano dall'esame dei dati stessi. In che modo i dati mostrerebbero che la distribuzione era Poisson, piuttosto che qualcosa del genere?
Come accennato all'inizio, ciò che puoi fare è verificare se i dati non sono ovviamente incoerenti con la distribuzione sottostante Poisson, ma ciò non ti dice che sono stati estratti da un Poisson (puoi già essere sicuro che siano non).
È possibile eseguire questo controllo tramite test di bontà di adattamento.
Il chi-quadrato che è stato menzionato è uno di questi, ma non consiglierei io stesso il test del chi-quadrato per questa situazione **; ha un basso potere contro deviazioni interessanti. Se il tuo obiettivo è avere un buon potere, non lo otterrai in questo modo (se non ti interessa il potere, perché dovresti testarlo?). Il suo valore principale è nella semplicità e ha valore pedagogico; al di fuori di questo, non è competitivo come un test di bontà di adattamento.
** Aggiunti nella modifica successiva: ora che è chiaro che si tratta di compiti a casa, le probabilità che tu debba fare un test chi-quadrato per verificare che i dati non siano incoerenti con un Poisson aumentano abbastanza. Vedi il mio esempio di bontà chi-quadro del test di adattamento, eseguito sotto il primo diagramma di Poissonness
Le persone spesso fanno questi test per la ragione sbagliata (ad esempio perché vogliono dire "quindi va bene fare qualche altra cosa statistica con i dati che presuppongono che i dati siano Poisson"). La vera domanda è "quanto male potrebbe andare?" ... e la bontà dei test di adattamento non è di grande aiuto per questa domanda. Spesso la risposta a questa domanda è nella migliore delle ipotesi indipendente (/ quasi indipendente) dalla dimensione del campione - e in alcuni casi, una con conseguenze che tendono ad andare via con la dimensione del campione ... mentre un test di bontà di adattamento è inutile con piccoli campioni (in cui il rischio derivante da violazioni di ipotesi è spesso al massimo).
Se devi testare una distribuzione di Poisson ci sono alcune alternative ragionevoli. Uno sarebbe fare qualcosa di simile a un test Anderson-Darling, basato sulla statistica AD ma usando una distribuzione simulata sotto il valore null (per tenere conto dei problemi gemelli di una distribuzione discreta e che è necessario stimare i parametri).
Un'alternativa più semplice potrebbe essere un Smooth Test per la bontà dell'adattamento: si tratta di una raccolta di test progettati per le singole distribuzioni modellando i dati utilizzando una famiglia di polinomi che sono ortogonali rispetto alla funzione di probabilità nel nulla. Le alternative di ordine inferiore (cioè interessanti) vengono testate verificando se i coefficienti dei polinomi sopra quello di base sono diversi da zero e questi possono di solito gestire la stima dei parametri omettendo i termini di ordine più basso dal test. C'è un simile test per il Poisson. Posso trovare un riferimento se ne hai bisogno.
Potresti anche usare la correlazione (o, per essere più simile a un test di Shapiro-Francia, forse ) in un diagramma di Poissonness - ad esempio un diagramma di vs (vedi Hoaglin, 1980) - come statistica test.n ( 1 - r2)log( xK) + registro( k ! )K
Ecco un esempio di quel calcolo (e trama), fatto in R:
y=rpois(100,5)
n=length(y)
(x=table(y))
y
0 1 2 3 4 5 6 7 8 9 10
1 2 7 15 19 25 14 7 5 1 4
k=as.numeric(names(x))
plot(k,log(x)+lfactorial(k))
Ecco la statistica che ho suggerito potrebbe essere utilizzata per un test di adattamento di un Poisson:
n*(1-cor(k,log(x)+lfactorial(k))^2)
[1] 1.0599
Ovviamente, per calcolare il valore p, avresti anche bisogno di simulare la distribuzione della statistica test sotto il valore null (e non ho discusso su come si potrebbero gestire i conteggi zero all'interno dell'intervallo di valori). Ciò dovrebbe produrre un test ragionevolmente potente. Esistono numerosi altri test alternativi.
Ecco un esempio di come realizzare un diagramma di Poissonness su un campione di dimensione 50 da una distribuzione geometrica (p = .3):
Come vedi, mostra un chiaro "nodo", che indica la non linearità
I riferimenti per la trama di Poissonness sarebbero:
David C. Hoaglin (1980),
"A Poissonness Plot",
The American Statistician
Vol. 34, n. 3 (agosto,), pagg. 146-149
e
Hoaglin, D. e J. Tukey (1985),
"9. Verifica della forma delle distribuzioni discrete",
esplorazione di tabelle di dati, tendenze e forme ,
(edizioni di Hoaglin, Mosteller e Tukey)
John Wiley & Sons
Il secondo riferimento contiene un adattamento alla trama per piccoli conteggi; probabilmente vorresti incorporarlo (ma non ho il riferimento a portata di mano).
Esempio di test di bontà chi-quadrato di adattamento:
A parte eseguire la bontà chi-quadrato dell'adattamento, il modo in cui ci si aspetterebbe di solito in molte classi (anche se non nel modo in cui lo farei):
1: a partire dai tuoi dati, (che prenderò per essere i dati che ho generato casualmente in 'y' sopra, genera la tabella dei conteggi:
(x=table(y))
y
0 1 2 3 4 5 6 7 8 9 10
1 2 7 15 19 25 14 7 5 1 4
2: calcola il valore atteso in ogni cella, assumendo un Poisson montato da ML:
(expec=dpois(0:10,lambda=mean(y))*length(y))
[1] 0.7907054 3.8270142 9.2613743 14.9416838 18.0794374 17.5008954 14.1173890 9.7611661
[9] 5.9055055 3.1758496 1.5371112
3: notare che le categorie finali sono piccole; questo rende la distribuzione del chi-quadrato meno buona come approssimazione alla distribuzione della statistica del test (una regola comune è che tu desideri valori attesi di almeno 5, anche se numerosi articoli hanno dimostrato che la regola è inutilmente restrittiva; lo prenderò vicino, ma l'approccio generale può essere adattato a una regola più rigorosa). Comprimi le categorie adiacenti, in modo che i valori minimi previsti siano almeno non troppo al di sotto di 5 (una categoria con un conto alla rovescia atteso vicino a 1 su più di 10 categorie non è male, due è piuttosto borderline). Si noti inoltre che non abbiamo ancora tenuto conto della probabilità oltre "10", quindi è necessario includere anche questo:
expec[1]=sum(expec[1:2])
expec[2:8]=expec[3:9]
expec[9]=length(y)-sum(expec[1:8])
expec=expec[1:9]
expec
sum(expec) # now adds to n
4: allo stesso modo, comprimi categorie sull'osservato:
(obs=table(y))
obs[1]=sum(obs[1:2])
obs[2:8]=obs[3:9]
obs[9]=sum(obs[10:11])
obs=obs[1:9]
5: Metti in una tabella, (facoltativamente) insieme al contributo a chi-quadrato e il residuo di Pearson (la radice quadrata firmata del contributo), questi possono essere utili quando cerchi di vedere dove non si adatta così bene:( Oio- Eio)2/ Eio
print(cbind(obs,expec,PearsonRes=(obs-expec)/sqrt(expec),ContribToChisq=(obs-expec)^2/expec),d=4)
obs expec PearsonRes ContribToChisq
0 3 4.618 -0.75282 0.5667335
1 7 9.261 -0.74308 0.5521657
2 15 14.942 0.01509 0.0002276
3 19 18.079 0.21650 0.0468729
4 25 17.501 1.79258 3.2133538
5 14 14.117 -0.03124 0.0009761
6 7 9.761 -0.88377 0.7810581
7 5 5.906 -0.37262 0.1388434
8 5 5.815 -0.33791 0.1141816
6: Calcola , con perdita di 1df per il totale previsto corrispondente al totale osservato e 1 altro per la stima del parametro:X2= ∑io( Eio- Oio)2/ Eio
(chisq = sum((obs-expec)^2/expec))
[1] 5.414413
(df = length(obs)-1-1) # lose an additional df for parameter estimate
[1] 7
(pvalue=pchisq(chisq,df))
[1] 0.3904736
Sia la diagnostica che il valore p non mostrano alcuna mancanza di adattamento qui ... cosa che ci aspetteremmo, dato che i dati che abbiamo generato in realtà erano Poisson.
Modifica: ecco un link al blog di Rick Wicklin che discute della trama di Poissonness e parla delle implementazioni in SAS e Matlab
http://blogs.sas.com/content/iml/2012/04/12/the-poissonness-plot-a-goodness-of-fit-diagnostic/
Edit2: Se ho ragione, la trama di Poissonness modificata dal riferimento del 1985 sarebbe *:
y=rpois(100,5)
n=length(y)
(x=table(y))
k=as.numeric(names(x))
x=as.vector(x)
x1 = ifelse(x==0,NA,ifelse(x>1,x-.8*x/n-.67,exp(-1)))
plot(k,log(x1)+lfactorial(k))
* Anche loro regolano l'intercettazione, ma non l'ho fatto qui; non influisce sull'aspetto della trama, ma bisogna fare attenzione se si implementa qualcos'altro dal riferimento (come gli intervalli di confidenza) se lo si fa in modo completamente diverso dal loro approccio.
(Per l'esempio sopra, l'aspetto non cambia quasi dal primo diagramma di Poissonness.)