Regressione di Poisson azzerata / Stata Esempi di analisi dei dati

Informazioni sulla versione: Il codice per questa pagina è stato testato in Stata 12.

La regressione di poisson gonfiata a zero viene utilizzata per modellare i dati di conteggio con un eccesso di conteggi zero. Inoltre, la teoria suggerisce che gli zeri in eccesso sono generati da un processo separato dai valori di conteggio e che gli zeri in eccesso possono essere modellati in modo indipendente. Pertanto, il modello zip ha due parti, un modello di conteggio di poisson e il modello logit per prevedere gli zeri in eccesso. Si consiglia di rivedere queste pagine di esempio di analisi dei dati, Regressione di Poisson e regressione di Logit.

Nota: Lo scopo di questa pagina è mostrare come utilizzare vari comandi di analisi dei dati. Non copre tutti gli aspetti del processo di ricerca che i ricercatori dovrebbero fare. In particolare, non riguarda la pulizia e la verifica dei dati, la verifica delle ipotesi, la diagnostica del modello e le potenziali analisi di follow-up.

Esempi di regressione di Poisson gonfiata a zero

Esempio 1.

Gli amministratori scolastici studiano il comportamento di frequenza dei ragazzi delle scuole superiori per un semestre in due scuole. La frequenza è misurata dal numero di giorni di assenza ed è prevista dal sesso dello studente e dai punteggi standardizzati nelle arti matematiche e linguistiche. Molti studenti non hanno assenze durante il semestre.

Esempio 2.

I biologi della fauna selvatica dello stato vogliono modellare quanti pesci vengono catturati dai pescatori in un parco statale. Ai visitatori viene chiesto se hanno o meno un camper, quanti persone erano nel gruppo, c’erano bambini nel gruppo e quanti pesci sono stati catturati.Alcuni visitatori non pescano, ma non ci sono dati sul fatto che una persona abbia pescato o meno. Alcuni visitatori che hanno pescato non hanno catturato alcun pesce, quindi ci sono zeri in eccesso nei dati a causa delle persone che non hanno pescato.

Descrizione dei dati

Proseguiamo l’esempio 2 dall’alto.

Abbiamo dati su 250 gruppi che sono andati in un parco. Ogni gruppo è stato interrogato su quanti pesci hanno catturato( conteggio), quanti bambini erano nel gruppo (bambino), quante persone erano nel gruppo (persone), e se hanno portato o meno un camper al parco (camper).

Oltre a prevedere il numero di pesci catturati, c’è interesse a prevedere l’esistenza di zeri in eccesso, cioè gli zeri che non erano semplicemente il risultato di una pesca sfortunata. Useremo le variabili bambino, persone, e camper nel nostro modello. Diamo un’occhiata ai dati.

Metodi di analisi che potresti considerare

Di seguito è riportato un elenco di alcuni metodi di analisi che potresti aver incontrato.Alcuni dei metodi elencati sono abbastanza ragionevoli, mentre altri sono caduti in disgrazia o hanno limitazioni.

  • Zero-inflated Poisson Regression – Il focus di questa pagina web.
  • Regressione binomiale negativa gonfiata a zero-La regressione binomiale negativa fa meglio con i dati dispersi, cioè la varianza molto più grande della media.
  • Modelli di conteggio ordinario – I modelli binomiali Poisson o negativi potrebbero essere più appropriati se non ci sono zeri in eccesso.
  • Regressione OLS-Si potrebbe provare ad analizzare questi dati utilizzando la regressione OLS. Tuttavia, i countdata sono altamente non normali e non sono ben stimati dalla regressione OLS.

Regressione di Poisson gonfiata a zero

Eseguiremo il comando zip con bambino e camper come predittori dei conteggi,persone come predittore degli zeri in eccesso. Abbiamo incluso l’opzione vuongche fornisce un test del modello a gonfiaggio zero rispetto al modello standard di poisson.

zip count child camper, inflate(persons) vuongFitting constant-only model:Iteration 0: log likelihood = -1347.807 Iteration 1: log likelihood = -1315.5343 Iteration 2: log likelihood = -1126.3689 Iteration 3: log likelihood = -1125.5358 Iteration 4: log likelihood = -1125.5357 Iteration 5: log likelihood = -1125.5357 Fitting full model:Iteration 0: log likelihood = -1125.5357 Iteration 1: log likelihood = -1044.8553 Iteration 2: log likelihood = -1031.8733 Iteration 3: log likelihood = -1031.6089 Iteration 4: log likelihood = -1031.6084 Iteration 5: log likelihood = -1031.6084 Zero-inflated Poisson regression Number of obs = 250 Nonzero obs = 108 Zero obs = 142Inflation model = logit LR chi2(2) = 187.85Log likelihood = -1031.608 Prob > chi2 = 0.0000------------------------------------------------------------------------------ count | Coef. Std. Err. z P>|z| -------------+----------------------------------------------------------------count | child | -1.042838 .0999883 -10.43 0.000 -1.238812 -.846865 1.camper | .8340222 .0936268 8.91 0.000 .650517 1.017527 _cons | 1.597889 .0855382 18.68 0.000 1.430237 1.76554-------------+----------------------------------------------------------------inflate | persons | -.5643472 .1629638 -3.46 0.001 -.8837503 -.244944 _cons | 1.297439 .3738522 3.47 0.001 .5647022 2.030176------------------------------------------------------------------------------Vuong test of zip vs. standard Poisson: z = 3.57 Pr>z = 0.0002

L’output assomiglia molto all’output di una regressione OLS:

  • Inizia con il log di iterazione che fornisce i valori delle probabilità di log che iniziano con un modello che non ha predittori. L’ultimo valore nel registro è il valore finale della probabilità del registro per il modello completo e viene ripetuto di seguito.
  • Seguono le informazioni sull’intestazione. Sul lato destro sono indicati il numero di osservazioni utilizzate (250), il numero di osservazioni diverse da zero (108) insieme al rapporto di verosimiglianza chi-quadrato. Ciò confronta il modello completo con un modello senza predittori di conteggio, dando una differenza di due gradi di libertà. Questo è seguito dal valore p per il chi-quadrato. Il modello, nel suo complesso, è statisticamente significativo.
  • Sotto l’intestazione troverai i coefficienti di regressione di Poisson per ciascuno dei valori di conteggio che predicono le variabiliinsieme agli errori standard, ai punteggi z, ai valori p e agli intervalli di confidenza del 95% per thecoefficients.
  • Di seguito sono riportati i coefficienti logit per la variabile che predice gli zeri in eccesso con i suoi errori standard, i punteggi z, i valori p e gli intervalli di confidenza.
  • Sotto i vari coefficienti troverai i risultati del test Vuong. TheVuong prova confronta il modello zero-gonfiato con un modello ordinario di regressione di poisson.Un test z significativo indica che il modello a zero gonfiato è migliore.
  • Cameron e Trivedi (2009) raccomandano errori standard robusti per i modelli poisson.Rieseguiremo il modello con l’opzione vce (robusta). Non abbiamo incluso questa opzionenel primo modello perché le opzioni robust e vuong non possono essere utilizzate nello stesso modello.

zip count child i.camper, inflate(persons) vce(robust)Fitting constant-only model:Iteration 0: log pseudolikelihood = -1347.807 Iteration 1: log pseudolikelihood = -1315.5343 Iteration 2: log pseudolikelihood = -1126.3689 Iteration 3: log pseudolikelihood = -1125.5358 Iteration 4: log pseudolikelihood = -1125.5357 Iteration 5: log pseudolikelihood = -1125.5357 Fitting full model:Iteration 0: log pseudolikelihood = -1125.5357 Iteration 1: log pseudolikelihood = -1044.8553 Iteration 2: log pseudolikelihood = -1031.8733 Iteration 3: log pseudolikelihood = -1031.6089 Iteration 4: log pseudolikelihood = -1031.6084 Iteration 5: log pseudolikelihood = -1031.6084 Zero-inflated Poisson regression Number of obs = 250 Nonzero obs = 108 Zero obs = 142Inflation model = logit Wald chi2(2) = 7.25Log pseudolikelihood = -1031.608 Prob > chi2 = 0.0266------------------------------------------------------------------------------ | Robust count | Coef. Std. Err. z P>|z| -------------+----------------------------------------------------------------count | child | -1.042838 .3893772 -2.68 0.007 -1.806004 -.2796731 1.camper | .8340222 .4076029 2.05 0.041 .0351352 1.632909 _cons | 1.597889 .2934631 5.44 0.000 1.022711 2.173066-------------+----------------------------------------------------------------inflate | persons | -.5643472 .2888849 -1.95 0.051 -1.130551 .0018567 _cons | 1.297439 .493986 2.63 0.009 .3292445 2.265634------------------------------------------------------------------------------

Ora possiamo passare alle specifiche dei singoli risultati.

  • L’utilizzo dell’opzione robusta ha comportato un cambiamento abbastanza ampio nel modello chi-square,che ora è un Wald chi-square. Questa statistica si basa su log pseudo-likelihoods invece di log-likelihoods.
  • I coefficienti per bambino e camper possono essere interpretati come segue:
    • Per ogni aumento di unità di child il numero di log previsto della variabile di risposta diminuisce di 1,043.
    • Essere un camper aumenta il numero di log previsto di .834.
  • Il coefficiente di gonfiaggio per personsuggerisce che per ogni aumento di unità di persona le probabilità di log di una diminuzione dello zero gonfiato di.564.

Possiamo usare i margini (introdotti in Stata 11) per aiutare a capire il nostro modello. Noi willfirst calcolare i conteggi attesi per il camper variabile categoriale mentre si tiene il figlio variabile continua al suo valore medio utilizzando l’opzione atmeans.

margins camper, atmeansAdjusted predictions Number of obs = 250Model VCE : RobustExpression : Predicted number of events, predict()at : child = .684 (mean) 0.camper = .412 (mean) 1.camper = .588 (mean) persons = 2.528 (mean)------------------------------------------------------------------------------ | Delta-method | Margin Std. Err. z P>|z| -------------+---------------------------------------------------------------- camper | 0 | 1.289132 .4393168 2.93 0.003 .4280866 2.150177 1 | 2.968305 .619339 4.79 0.000 1.754423 4.182187------------------------------------------------------------------------------

Il conteggio previsto per il numero di pesci catturati da noncampers è 1.289 mentre per i campeggiatori è 2.968 al mezzo di bambini e persone.

Utilizzando l’opzione dydx si calcola la differenza nei conteggi previsti tra camper = 0 e camper = 1 mentre si tiene ancora child alla sua media di.684 e persone alla sua media di 2.528.

margins, dydx(camper) atmeansConditional marginal effects Number of obs = 250Model VCE : RobustExpression : Predicted number of events, predict()dy/dx w.r.t. : 1.camperat : child = .684 (mean) 0.camper = .412 (mean) 1.camper = .588 (mean) persons = 2.528 (mean)------------------------------------------------------------------------------ | Delta-method | dy/dx Std. Err. z P>|z| -------------+---------------------------------------------------------------- 1.camper | 1.679173 .7754611 2.17 0.030 .1592975 3.199049------------------------------------------------------------------------------Note: dy/dx for factor levels is the discrete change from the base level.

La differenza nel numero di pesci catturati da campeggiatori e non campeggiatori è 1.679, che èstatisticamente significativo.

Un ultimo comando margini darà i conteggi previsti per i valori di bambino da zero a tre ad entrambi i livelli di camper.

Il numero previsto di pesci catturati diminuisce man mano che il numero di bambini aumenta sia per le persone con e senza camper.

Un certo numero di indicatori di adattamento del modello sono disponibili utilizzando il comando fitstat, che fa parte delle utilità spostado di J. Scott Long e Jeremy Freese (cerca spostado).

fitstatMeasures of Fit for zip of countLog-Lik Intercept Only: -1127.023 Log-Lik Full Model: -1031.608D(244): 2063.217 LR(4): 190.829 Prob > LR: 0.000McFadden's R2: 0.085 McFadden's Adj R2: 0.079ML (Cox-Snell) R2: 0.534 Cragg-Uhler(Nagelkerke) R2: 0.534AIC: 8.301 AIC*n: 2075.217BIC: 715.980 BIC': -168.743BIC used by Stata: 2090.824 AIC used by Stata: 2073.217

Cose da considerare

  • Poiché zip ha sia un modello di conteggio che un modello di logit, ciascuno dei due modelli dovrebbe avere buoni predittori. I due modelli non devono necessariamente utilizzare gli stessi predittori.
  • Problemi di previsione perfetta, separazione o separazione parziale possono verificarsi nella parte logistica del modello zero-gonfiato.
  • I dati di conteggio spesso utilizzano variabili di esposizione per indicare il numero di volte in cui l’evento potrebbe essersi verificato. È possibile incorporare l’esposizione nel modello utilizzando l’opzione exposure ().
  • Non è consigliabile applicare modelli di poisson gonfiati a zero a campioni di piccole dimensioni. Ciò che costituisce un piccolo campione non sembra essere chiaramente definitoin letteratura.
  • I valori Pseudo-R-squared differiscono dagli OLS R-squared, vedi FAQ: Cosa sono gli pseudo R-squared? per una discussione su questo tema.

Vedi anche

  • Stata Online Manual
    • zip
  • Comandi Stata correlati
    • nbreg — zero-inflated regressione binomiale negativa.
  • Il sito utilizza cookie tecnici e di terze parti. (2009) Microeconometria usando stata. College Station, TX: Stata Press.
  • Lungo, J. Scott, & Freese, Jeremy (2006). Modelli di regressione per variabili dipendenti categoriali utilizzando Stata (seconda edizione). College Station, TX: Stata Press.
  • Lungo, J. Scott (1997). Modelli di regressione per variabili dipendenti categoriche e limitate. Thousand Oaks, CA: Sage Publications.



+