Vai al contenuto principale

Regressione di Poisson: un modo per modellare i dati di conteggio

Scopri quando usare la regressione di Poisson, come interpretare i risultati tramite gli incidence rate ratio e come implementare le tecniche essenziali in R.
· 14 min leggi

Scopri con l'IA

Quando analizzi dati che coinvolgono il conteggio di eventi — come il numero di reclami dei clienti al giorno, i ricoveri ospedalieri al mese o i clic sul sito all’ora — la regressione lineare ordinaria spesso fornisce risultati fuorvianti. I dati di conteggio hanno caratteristiche specifiche che richiedono approcci di modellazione specializzati.

La regressione di Poisson offre un metodo statistico pensato apposta per i dati di conteggio. A differenza della regressione lineare, che può prevedere valori negativi, la regressione di Poisson garantisce che le previsioni restino interi non negativi. Questo la rende particolarmente preziosa in qualsiasi ambito in cui il conteggio degli eventi è centrale per le decisioni.

Se sei alle prime armi con l’analisi di regressione, il nostro corso Introduzione alla regressione in R fornisce i concetti di base essenziali di cui avrai bisogno per questo tutorial. Se invece vuoi esplorare la famiglia più ampia delle tecniche di regressione, Modelli lineari generalizzati in R offre una copertura completa del quadro statistico che include la regressione di Poisson.

Capire i dati di conteggio e le loro sfide

Cosa rende speciali i dati di conteggio

I dati di conteggio rappresentano quante volte qualcosa accade entro un periodo o uno spazio fissato. Esempi includono il numero di sinistri assicurativi per polizza all’anno o il numero di incidenti stradali a un incrocio al mese.

I dati di conteggio hanno diverse proprietà distintive che rendono inappropriata la regressione lineare ordinaria:

  • Solo interi non negativi: I conteggi non possono essere negativi o frazionari. 
  • Distribuzione asimmetrica a destra: La maggior parte dei dataset di conteggio mostra molti valori bassi con occasionali valori alti, creando una tipica coda a destra.
  • La varianza aumenta con la media: All’aumentare dei conteggi medi, tipicamente cresce anche la variabilità. 

Perché la regressione lineare fallisce

Considera di prevedere il numero di reclami dei clienti in base a fattori come la complessità del prodotto e i punteggi di soddisfazione. La regressione lineare tratta questo come un qualsiasi esito continuo, potenzialmente prevedendo valori impossibili come -1,5 reclami o 14,7 reclami.

Ancora più problematico, la regressione lineare assume varianza costante a tutti i livelli di previsione. In realtà, le settimane con conteggi di reclami più alti previsti mostreranno probabilmente maggiore variabilità rispetto alle settimane con conteggi bassi. Questo pattern, chiamato eteroschedasticità, porta a intervalli di confidenza e test di ipotesi inaffidabili.

Le basi della distribuzione di Poisson

La regressione di Poisson si basa sulla distribuzione di probabilità di Poisson, che descrive naturalmente i dati di conteggio. La distribuzione di Poisson ha un unico parametro (lambda) che rappresenta sia la media sia la varianza dei conteggi. Questa proprietà di uguaglianza tra media e varianza, chiamata equidispersione, è un’ipotesi chiave che dovremo verificare in pratica.

La distribuzione è eccellente per modellare eventi “rari” — non necessariamente infrequenti, ma eventi in cui ogni occorrenza è indipendente e il tasso rimane relativamente costante in condizioni simili.

Quando usare la regressione di Poisson

Prima, vediamo le condizioni ideali in cui la regressione di Poisson funziona bene. Poi, passiamo alle applicazioni reali. 

Scenari ideali

La regressione di Poisson funziona al meglio quando i tuoi dati soddisfano varie condizioni:

  • Eventi indipendenti: Ogni occorrenza non influenza le altre. Un sinistro non rende un altro più o meno probabile (supponendo assenza di frodi).
  • Tasso costante: In condizioni simili, il tasso medio di eventi rimane stabile. Le visite al pronto soccorso possono variare per giorno della settimana, ma i martedì in mesi simili dovrebbero mostrare andamenti coerenti.
  • Corretta finestra di tempo o spazio: Gli eventi sono contati su periodi o aree ben definiti. “Reclami al mese” è meglio di “reclami a volte contati giornalmente, a volte settimanalmente”.
  • Nessun evidente eccesso di zeri: Anche se alcuni zeri sono attesi, se i tuoi dati hanno molti più zeri di quanto prevederebbe la distribuzione di Poisson, potresti aver bisogno di modelli zero-inflated.

Applicazioni comuni

In sanità ed epidemiologia, i ricercatori tracciano i casi di malattia tra regioni o periodi, aggiustando per la popolazione. Per esempio, possono studiare come i tassi di vaccinazione influenzano le infezioni per 100.000 persone.

In ambito business e marketing, i team esaminano i comportamenti dei clienti come frequenza di acquisto, ticket di supporto o engagement. Le aziende e-commerce spesso modellano gli ordini giornalieri in base alla spesa in marketing, alla stagionalità e alle promozioni.

Ecco poi un esempio classico spesso citato con la regressione di Poisson: i team di produzione monitorano i tassi di difetti per dimensione del lotto o periodo di ispezione per intercettare precocemente problemi di qualità e migliorare i processi.

Struttura del modello e ipotesi

Il collegamento logaritmico

La regressione di Poisson non modella direttamente i conteggi. Invece, modella il logaritmo del conteggio atteso come combinazione lineare dei predittori.

Questa trasformazione logaritmica garantisce previsioni positive. In particolare, la funzione di link log trasforma il conteggio atteso in scala log, assicurando che le previsioni del valore medio del conteggio rimangano strettamente positive. Invertendo la trasformazione (esponenziando), otteniamo:

Questa struttura implica che le variazioni dei predittori hanno effetti moltiplicativi sul conteggio atteso. 

Interpretare gli effetti moltiplicativi

Nella regressione lineare, aumentare un predittore di un’unità aggiunge una quantità costante all’esito. Nella regressione di Poisson, aumentare un predittore di un’unità moltiplica il conteggio atteso per un fattore costante.

Per esempio, se il coefficiente per “spesa marketing” è 0,1, allora ogni dollaro aggiuntivo di spesa marketing moltiplica il numero atteso di clienti per e^0,1 ≈ 1,105, pari a circa un aumento del 10,5%.

Anche se può sembrare più complicato, questa caratteristica è intuitiva nelle applicazioni business, dove spesso ragioniamo in termini di variazioni percentuali ed effetti relativi.

Ipotesi chiave da verificare

Come per qualsiasi modello, ci sono alcune ipotesi a cui prestare attenzione: 

  • Indipendenza: Le osservazioni non dovrebbero influenzarsi a vicenda. Se analizzi conteggi giornalieri nel tempo, forti pattern temporali potrebbero indicare dipendenza che richiede modellazioni più sofisticate.
  • Equidispersione: La varianza dovrebbe essere approssimativamente uguale alla media. Calcola questo rapporto per i tuoi dati: valori molto maggiori di 1 suggeriscono sovradispersione da affrontare.
  • Forma funzionale corretta: La relazione tra predittori e log-conteggio dovrebbe essere approssimativamente lineare. Relazioni non lineari possono richiedere termini polinomiali o trasformazioni.
  • Assenza di outlier gravi: Valori di conteggio estremi possono influenzare eccessivamente i risultati. Verifica se gli outlier rappresentano errori di dato o eventi estremi genuini.

Lavorare con esposizione e offset

Capire le variabili di esposizione

Molti dataset di conteggio includono livelli di esposizione diversi — periodi di tempo, dimensioni di popolazione o intensità di osservazione variabili. Ad esempio, confrontare i conteggi di incidenti tra città richiede di tenere conto delle differenze di popolazione, oppure confrontare le vendite mensili richiede di considerare che alcuni mesi hanno un numero di giorni diverso.

Le variabili di esposizione rappresentano il “denominatore” che rende confrontabili i conteggi. Senza il corretto aggiustamento, le città più grandi avranno banalmente più incidenti e i mesi più lunghi avranno vendite maggiori, potenzialmente mascherando le vere relazioni che vuoi studiare.

Implementare gli offset

Gli offset consentono di incorporare variabili di esposizione con coefficiente fissato a 1. Invece di modellare i conteggi grezzi, gli offset ti permettono di modellare tassi mantenendo la struttura di conteggio dei dati.

La forma matematica diventa:

Riorganizzando questa equazione:

Questo mostra che stai effettivamente modellando il log-tasso, dove tasso = conteggio/esposizione.

Quando questo approccio è utile

  • Tassi di malattia aggiustati per popolazione: Confrontando i casi COVID-19 tra contee, includi log(population) come offset. In questo modo, i coefficienti rappresentano effetti sui casi per persona e non sui casi totali.
  • Metriche di business aggiustate per tempo: Se analizzi vendite mensili con alcuni mesi aventi periodi promozionali diversi, includi log(promotional_days) come offset per studiare le vendite per giorno promozionale.
  • Dati ambientali aggiustati per area: Nel contare avvistamenti di specie in diverse porzioni di habitat, includi log(area_surveyed) come offset per modellare la densità di specie invece dei conteggi grezzi.

L’offset garantisce che raddoppiare l’esposizione raddoppi il conteggio atteso (a parità di altre condizioni), che è la relazione naturale per fenomeni basati su tassi.

Interpretare coefficienti e risultati

Dai coefficienti ai rapporti di incidenza (IRR)

I coefficienti grezzi della regressione di Poisson rappresentano variazioni nel log-conteggio, difficili da interpretare direttamente. Esponenziarli li trasforma in incidence rate ratio (IRR), più intuitivi.

Un IRR rappresenta il cambiamento moltiplicativo nel conteggio atteso per un aumento di un’unità del predittore:

  • IRR = 1,0: Nessun effetto (il predittore non cambia il tasso)
  • IRR = 1,2: aumento del tasso del 20%
  • IRR = 0,8: diminuzione del tasso del 20%
  • IRR = 2,0: aumento del 100% (raddoppio del tasso)

Interpretare diversi tipi di predittori

  • Predittori continui: Se l’età ha un IRR di 1,03, ogni anno in più moltiplica il conteggio atteso per 1,03, pari a un aumento del 3%. Per una differenza di 10 anni, l’effetto sarebbe 1,03^10 ≈ 1,34, circa il 34% in più.
  • Predittori binari: Se il genere (maschio vs femmina) ha un IRR di 1,5, i maschi hanno un tasso 1,5 volte quello delle femmine, cioè un 50% in più.
  • Predittori categorici: Con più categorie, ogni livello è confrontato con una categoria di riferimento. Se “inverno” ha un IRR di 0,7 rispetto a “estate”, i mesi invernali mostrano il 30% di eventi in meno rispetto ai mesi estivi.

Capire gli intervalli di confidenza

Gli intervalli di confidenza degli IRR forniscono stime dell’incertezza attorno ai rapporti di tasso. Un IRR di 1,25 con un intervallo di confidenza al 95% di [1,10, 1,42] suggerisce che puoi essere ragionevolmente sicuro che il vero effetto rappresenti un aumento del tasso tra il 10% e il 42%.

Se un intervallo di confidenza include 1,0, l’effetto potrebbe non essere statisticamente significativo. Per esempio, un IRR di 1,15 con CI [0,95, 1,39] suggerisce che il predittore potrebbe non avere effetto.

Strategie pratiche di comunicazione

Quando presenti i risultati a un pubblico non tecnico, concentra l’attenzione sulle variazioni percentuali piuttosto che sui rapporti. Invece di dire “l’IRR è 1,3”, dì “questo fattore è associato a un aumento del 30% del tasso di eventi”.

Fornisci esempi concreti: “In base al nostro modello, aumentare la spesa marketing di 1000 $ è associato a circa il 15% di acquisizioni clienti in più, da una media di 20 a circa 23 clienti al mese”.

Implementare la regressione di Poisson in R

Ora che abbiamo visto nel dettaglio l’interpretazione, implementiamo in R.

Preparazione ed esplorazione dei dati

Prima di adattare qualsiasi modello, esamina attentamente i tuoi dati di conteggio. Inizia caricando le librerie necessarie ed esplorando la distribuzione:

library(ggplot2)
library(dplyr)

# Example: Website daily visitor counts
data <- data.frame(
  visitors = c(42, 48, 39, 52, 44, 58, 51, 47, 41, 49, 40, 46, 43, 54, 50),
  day_of_week = factor(c("Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun",
                        "Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun", "Mon")),
  marketing_spend = c(200, 150, 180, 250, 220, 400, 350, 300, 160, 190,
                     140, 210, 380, 420, 170),
  temperature = c(22, 25, 19, 24, 26, 28, 30, 27, 21, 23, 18, 25, 29, 31, 20)
)

# Check mean vs variance (should be similar for Poisson)
mean(data$visitors)
var(data$visitors)
var(data$visitors) / mean(data$visitors) # Should be close to 1

# Visualize the distribution
ggplot(data, aes(x = visitors)) +
  geom_histogram(bins = 8, fill = "lightblue", color = "black") +
  labs(title = "Distribution of Daily Visitors",
       x = "Number of Visitors", y = "Frequency")
> mean(data$visitors)
[1] 46.93333
> var(data$visitors)
[1] 30.35238
> var(data$visitors) / mean(data$visitors)
[1] 0.6467127

Il rapporto varianza/media di 0,65 è ragionevolmente vicino a 1, indicando che i nostri dati sono adatti alla regressione di Poisson. Pur non essendo esattamente uguale, rapporti tra 0,5 e 1,5 sono generalmente accettabili e suggeriscono che la distribuzione di Poisson fornisce una buona base per modellare questi dati di conteggio.

Histogram of daily visitor counts

Distribuzione dei visitatori giornalieri del sito web. Immagine dell’autore.

L’istogramma mostra una distribuzione approssimativamente simmetrica dei conteggi di visitatori, centrata intorno a 47 visitatori al giorno, con valori che vanno da circa 39 a 58. Questo andamento è coerente con dati di conteggio che possono essere modellati efficacemente usando la regressione di Poisson.

Adattare il modello

La funzione glm() con family = poisson adatta modelli di regressione di Poisson:

# Basic Poisson regression
model <- glm(visitors ~ day_of_week + marketing_spend + temperature,
             family = poisson, data = data)

# View key model results
summary(model)

# Calculate Incidence Rate Ratios (IRRs)
exp(coefficients(model))

Ecco la tabella dei coefficienti:

Coefficients:
                 Estimate Std. Error z value Pr(>|z|)    
(Intercept)     3.2978122  0.5556601   5.935 2.94e-09 ***
day_of_weekMon  0.0724036  0.1635467   0.443    0.658    
day_of_weekSat  0.0316265  0.2872878   0.110    0.912    
day_of_weekSun  0.0339621  0.2502578   0.136    0.892    
day_of_weekThu  0.1068756  0.1870821   0.571    0.568    
day_of_weekTue  0.0442967  0.1633032   0.271    0.786    
day_of_weekWed  0.0653789  0.1813230   0.361    0.718    
marketing_spend 0.0001593  0.0018211   0.087    0.930    
temperature     0.0186099  0.0317682   0.586    0.558

Ecco gli incidence rate ratio (IRR):

(Intercept)  day_of_weekMon  day_of_weekSat  day_of_weekSun  day_of_weekThu  day_of_weekTue  day_of_weekWed marketing_spend 
27.053386        1.075089        1.032132        1.034545        1.112796        1.045292        1.067563        1.000159 
temperature 
1.018784 

I coefficienti mostrano gli effetti in scala log, ma gli IRR offrono interpretazioni più intuitive. Per esempio, il giovedì (day_of_weekThu) ha un IRR di 1,11, suggerendo circa l’11% di visitatori in più rispetto al venerdì (categoria di riferimento). La spesa marketing ha un IRR di 1,0002, indicando che ogni dollaro aggiuntivo aumenta i visitatori attesi di circa lo 0,02%.

Nota che, se calcolassimo gli intervalli di confidenza per questi IRR, molti includerebbero 1,0, suggerendo che gli effetti non sono statisticamente significativi con questo piccolo campione. È comune con dataset ridotti e mostra perché la dimensione del campione conta.

Includere l’esposizione con gli offset

Se i tuoi dati hanno periodi di esposizione variabili, includili come offset:

# Example with exposure data
data$exposure_days <- c(rep(7, 10), rep(6, 5))  # Some weeks had 6 observation days

# Model with offset
model_offset <- glm(visitors ~ day_of_week + marketing_spend + temperature + 
                   offset(log(exposure_days)), 
                   family = poisson, data = data)

summary(model_offset)
Call:
glm(formula = visitors ~ day_of_week + marketing_spend + temperature + 
    offset(log(exposure_days)), family = poisson, data = data)

Coefficients:
                  Estimate Std. Error z value Pr(>|z|)   
(Intercept)      1.734e+00  5.579e-01   3.109  0.00188 **
day_of_weekMon   2.371e-02  1.637e-01   0.145  0.88485   
day_of_weekSat   9.873e-02  2.898e-01   0.341  0.73338   
day_of_weekSun   1.208e-01  2.472e-01   0.489  0.62513   
day_of_weekThu   5.642e-02  1.871e-01   0.302  0.76297   
day_of_weekTue  -6.713e-02  1.634e-01  -0.411  0.68128   
day_of_weekWed  -6.073e-02  1.825e-01  -0.333  0.73934   
marketing_spend -4.231e-05  1.823e-03  -0.023  0.98149   
temperature      8.210e-03  3.179e-02   0.258  0.79623

Nota come i coefficienti cambiano nettamente quando includiamo l’offset. L’intercetta scende da 3,30 a 1,73 e tutti gli altri effetti diventano più piccoli. Questa trasformazione avviene perché ora stiamo modellando il tasso per giorno invece dei conteggi totali su periodi variabili.

L’offset garantisce confronti equi aggiustando per diverse lunghezze di esposizione. Senza questo aggiustamento, i periodi con più giorni di osservazione sembrerebbero artificialmente avere più visitatori, potenzialmente mascherando le vere relazioni che vogliamo studiare. Il modello ora risponde a “Qual è il tasso giornaliero di visitatori?” invece di “Quanti visitatori totali ci sono stati?”.

Fare previsioni

Genera previsioni per nuovi scenari:

# Create new data for prediction
new_data <- data.frame(
  day_of_week = factor("Fri", levels = levels(data$day_of_week)),
  marketing_spend = 300,
  temperature = 25
)

# Predict expected counts
predicted_counts <- predict(model, newdata = new_data, type = "response")
print(paste("Expected visitors:", round(predicted_counts, 1)))
[1] "Expected visitors: 45.2"

Il modello prevede 45,2 visitatori per un venerdì con 300 $ di spesa marketing e temperatura di 25 °C. Questa previsione rientra nell’intervallo ragionevole dei nostri dati osservati (39-58 visitatori) ed è vicina alla nostra media complessiva di 46,9 visitatori.

La regressione di Poisson garantisce naturalmente che le previsioni restino positive, e diventano interi quando arrotondate, a differenza della regressione lineare che potrebbe produrre valori negativi impossibili. Il parametro type = "response" restituisce previsioni sulla scala originale dei conteggi invece della scala log usata internamente dal modello.

Diagnostica essenziale del modello

Verificare la sovradispersione

La sovradispersione si verifica quando la varianza supera la media, violando un’ipotesi chiave di Poisson:

# Calculate dispersion statistic
residual_deviance <- model$deviance
df_residual <- model$df.residual
dispersion <- residual_deviance / df_residual

print(paste("Dispersion statistic:", round(dispersion, 3)))

if (dispersion > 1.5) {
  print("Possible overdispersion detected")
  print("Consider quasi-Poisson or negative binomial models")
}
[1] "Dispersion statistic: 0.849"

La statistica di dispersione di 0,849 è vicina a 1, indicando che il nostro modello si adatta bene ai dati senza sovradispersione significativa. Valori prossimi a 1 suggeriscono che l’ipotesi di Poisson di uguaglianza tra media e varianza è ragionevole per questo dataset.

Poiché la statistica è inferiore a 1,5, non compare alcun messaggio di avviso, confermando che la regressione di Poisson standard è appropriata. Se questo valore fosse molto maggiore di 1 (tipicamente sopra 1,5), dovremmo considerare modelli quasi-Poisson o binomiale negativo per tenere conto della variabilità extra.

Analisi dei residui

Esamina i residui per rilevare pattern o violazioni del modello:

# Calculate Pearson residuals
fitted_values <- fitted(model)
pearson_residuals <- residuals(model, type = "pearson")

# Plot residuals vs fitted values
plot(fitted_values, pearson_residuals,
     xlab = "Fitted Values", ylab = "Pearson Residuals",
     main = "Residuals vs Fitted")
abline(h = 0, col = "red", lty = 2)

Alt Text: Scatter plot of Pearson residuals vs fitted values

Grafico dei residui che mostra una dispersione casuale attorno allo zero. Immagine dell’autore.

Il grafico dei residui mostra punti dispersi casualmente attorno alla linea dello zero senza pattern evidenti, indicando che il nostro modello si adatta bene ai dati. I residui variano approssimativamente da -1 a +1, il che è ragionevole per questa dimensione campionaria.

Un buon grafico dei residui dovrebbe mostrare: dispersione casuale attorno a zero (nessun pattern curvo), ampiezza approssimativamente costante sui valori adattati (niente forme a imbuto) e assenza di outlier estremi. Questo grafico soddisfa tutti questi criteri, confermando che le ipotesi della regressione di Poisson sono rispettate e che il nostro modello fornisce risultati affidabili.

Gestire la sovradispersione

Se viene rilevata sovradispersione, valuta modelli quasi-Poisson che correggono gli errori standard:

# Fit quasi-Poisson model
quasi_model <- glm(visitors ~ day_of_week + marketing_spend + temperature, 
                   family = quasipoisson, data = data)

Poiché il nostro modello mostra una buona dispersione (0,849), qui non sono necessarie correzioni quasi-Poisson. Tuttavia, questo approccio fornisce intervalli di confidenza e p-value più conservativi quando la varianza supera la media, rendendolo uno strumento prezioso per dati reali di conteggio che spesso mostrano sovradispersione.

Presentare e interpretare i risultati

Creare sintesi dei risultati chiare

Trasforma l’output del modello in insight rilevanti per il business concentrandoti sul significato pratico degli IRR. Quando il tuo modello mostra che i giorni del weekend hanno un IRR di 1,4 rispetto ai giorni feriali, comunica questo come “nei weekend ci sono circa il 40% di visitatori in più rispetto ai giorni feriali”. Quando la spesa marketing ha un IRR di 1,002, spiega che “ogni dollaro in più in marketing è associato a circa lo 0,2% di visitatori in più”.

Per le variabili continue, valuta di presentare gli effetti su intervalli significativi. Invece di discutere l’effetto di un solo grado di temperatura, mostra l’impatto di una differenza di 10 gradi, che potrebbe essere più rilevante per la pianificazione aziendale.

Capire i limiti del modello

La regressione di Poisson identifica associazioni, non relazioni causali. Una forte associazione tra spesa marketing e conteggi di visitatori non prova che il marketing causi l’aumento.  Altri fattori potrebbero influenzare entrambe le variabili. Riconosci questo limite quando presenti i risultati.

Il modello assume che il tasso rimanga costante per determinati valori dei predittori. Se la tua attività ha trend stagionali non catturati dalle variabili, o se la relazione tra predittori ed esiti cambia nel tempo, il modello potrebbe non generalizzare bene a periodi futuri.

Sfide comuni e soluzioni

Gestire i conteggi zero

I dati di conteggio spesso contengono zeri, perfettamente validi nella regressione di Poisson. Tuttavia, se i tuoi dati hanno molti più zeri di quanto prevederebbe una distribuzione di Poisson, questo potrebbe indicare un diverso processo generatore dei dati. Alcune osservazioni possono rappresentare periodi o condizioni in cui l’evento semplicemente non può avvenire, piuttosto che periodi in cui poteva avvenire ma non è successo.

Per esempio, i conteggi di visitatori del sito possono includere zeri nei giorni in cui il sito era offline per manutenzione. Questi “zeri strutturali” sono diversi dagli “zeri casuali” che si verificano naturalmente nei processi di Poisson.

Strategia di costruzione del modello

Parti dai predittori più importanti in base alla conoscenza del dominio. Aggiungi le variabili una alla volta e valuta se migliorano la tua comprensione dei dati. I modelli più complessi non sono sempre migliori.

Presta attenzione al significato pratico degli effetti, non solo a quello statistico. Un cambiamento del 1% nel tasso di eventi, anche se statisticamente significativo, potrebbe non giustificare un’azione di business, mentre un cambiamento del 20% marginalmente non significativo potrebbe comunque meritare un approfondimento con più dati.

Gestire le violazioni

Quando l’equidispersione fallisce (varianza molto più grande della media), la regressione quasi-Poisson offre una soluzione semplice. Mantiene la stessa struttura del modello ma aggiusta gli errori standard per considerare la variabilità extra. Questo produce intervalli di confidenza e p-value più conservativi.

Per sovradispersione grave, la regressione binomiale negativa modella esplicitamente la variazione aggiuntiva. Questo approccio stima sia la relazione sulla media sia la variabilità extra.

Buone pratiche e raccomandazioni

Evitare errori comuni

Non ignorare la sovradispersione: è una delle violazioni più comuni delle ipotesi di Poisson e può compromettere gravemente le conclusioni. Controlla sempre il rapporto varianza/media e valuta alternative quando necessario.

Sii cauto nell’extrapolare oltre l’intervallo dei tuoi dati. Se la spesa marketing va da 100 $ a 1000 $, non prevedere con sicurezza effetti per livelli di 5000 $. La relazione potrebbe non rimanere log-lineare a valori estremi.

Evita di trattare tutti i predittori categoriali come se avessero spaziature uguali tra i livelli. Le categorie di istruzione (scuola superiore, qualche esame universitario, laurea) potrebbero non avere effetti uguali sulla variabile di esito.

Documentazione e workflow

Documenta le tue decisioni di modellazione, specialmente le violazioni delle ipotesi e come le hai affrontate. Se hai riscontrato sovradispersione ma hai scelto correzioni quasi-Poisson, annota questa decisione e le sue implicazioni per l’interpretazione.

Conclusione

La regressione di Poisson fornisce un quadro efficace per analizzare i dati di conteggio in molti ambiti. Quando applichi queste tecniche ai tuoi dati, parti da modelli semplici e aumenta gradualmente la complessità in base sia all’evidenza statistica sia all’esperienza di dominio. Quando le ipotesi vengono violate, estensioni come i modelli quasi-Poisson o binomiale negativo sono ottime alternative. L’obiettivo non è solo la significatività statistica, ma insight pratici che guidino decisioni migliori.

Se vuoi approfondire le tue competenze sulla regressione, il nostro corso Regressione intermedia in R copre tecniche diagnostiche avanzate e strategie di modellazione che completano le competenze sulla regressione di Poisson acquisite qui. Modelli lineari generalizzati in R è un’altra ottima opzione.

Vinod Chugani

Autore

Vinod Chugani

Vinod Chugani ha iniziato la sua carriera a Tokyo come il più giovane Head dell'Hedge Fund Sales Desk di JPMorgan e in seguito ha stabilito un record personale di vendite a Lehman Brothers, poi ha costruito un'attività di distribuzione di elettronica in 30 paesi superando i 100 milioni di SG$ di fatturato prima di passare ai dati. Laureato in Economia alla Duke e diplomato alla NYC Data Science Academy, è stato uno dei tre beneficiari di borsa di studio su oltre 100 candidati per il corso Building AI Applications di Hugo Bowne-Anderson su Maven. Oggi scrive per DataCamp, KDnuggets, Machine Learning Mastery e Statology su argomenti che vanno dalla statistica all'AI agentica, e fa da mentor a professionisti dei dati alla NYC Data Science Academy con oltre 1.000 sessioni one-to-one all'attivo.

 

Regressione di Poisson: domande frequenti

A cosa serve la regressione di Poisson?

La regressione di Poisson viene usata per modellare dati di conteggio — come il numero di reclami dei clienti al giorno, le visite al sito all’ora o i difetti per lotto. È progettata specificamente per esiti interi non negativi.

Quando dovrei usare la regressione di Poisson invece della regressione lineare?

Usa la regressione di Poisson quando la variabile di esito rappresenta conteggi, ha solo interi non negativi e mostra una distribuzione asimmetrica a destra. La regressione lineare può prevedere valori negativi impossibili per i dati di conteggio.

Cosa sono gli incidence rate ratio (IRR) nella regressione di Poisson?

Gli IRR sono coefficienti esponenziati che mostrano il cambiamento moltiplicativo nel conteggio atteso per un aumento di un’unità in un predittore. Un IRR di 1,2 significa un aumento del 20% del tasso.

La regressione di Poisson può gestire conteggi zero?

Sì, la regressione di Poisson gestisce naturalmente gli zeri. Tuttavia, se hai molti più zeri del previsto, valuta modelli zero-inflated per un miglior adattamento.

Cos’è la sovradispersione e come la gestisco?

La sovradispersione si verifica quando la varianza supera la media (rapporto > 1,5). Gestiscila usando la regressione quasi-Poisson, che aggiusta gli errori standard, o la regressione binomiale negativa per i casi più gravi.

Come verifico se i miei dati sono adatti alla regressione di Poisson?

Calcola il rapporto varianza/media della tua variabile di conteggio — dovrebbe essere vicino a 1. Controlla anche l’indipendenza delle osservazioni e assicurati di avere una corretta finestra di tempo/spazio per il conteggio.

Argomenti

Correlato