Modelli lineari generalizzati

La regressione per risultati che non sono misure continue

Molti risultati in sanità non sono misure continue. Il paziente è stato riammesso o no. Quanti accessi in pronto soccorso ha fatto in un anno. Quante ospedalizzazioni si sono verificate in un distretto. La regressione lineare non è adatta a questi dati: può prevedere probabilità negative o conteggi con la virgola. I modelli lineari generalizzati estendono la regressione a questi casi.

Riammissioni per numero di comorbidità con la curva logistica

L'idea, in parole semplici

Una probabilità deve restare tra 0 e 1, un conteggio non può essere negativo. Una retta invece prima o poi esce da qualsiasi intervallo. I modelli lineari generalizzati risolvono il problema con un "traduttore": il modello resta lineare, ma su una scala trasformata, e poi viene riportato sulla scala del risultato. Per le probabilità la trasformazione è il logit, che produce la tipica curva a S del grafico: sale con il rischio, ma non supera mai lo 0% o il 100%.

I modelli più usati

  • Regressione logistica: per risultati sì/no, come la riammissione a 30 giorni o la mortalità. Restituisce odds ratio.
  • Regressione di Poisson: per conteggi e tassi, come il numero di ricoveri per residenti. Restituisce rapporti tra tassi.
  • Binomiale negativa: per conteggi più variabili di quanto preveda la Poisson, situazione molto comune nei dati sanitari.

Due dettagli che fanno la differenza

Per confrontare tassi tra popolazioni di dimensioni diverse si inserisce nel modello il logaritmo della popolazione, o del tempo di osservazione, come offset. Così il modello stima tassi e non semplici conteggi. Bisogna inoltre controllare la sovradispersione: se i conteggi variano più del previsto e la si ignora, gli intervalli di confidenza risultano troppo stretti e i risultati sembrano più solidi di quanto siano.

Gli errori più comuni

Leggere un odds ratio come se fosse un rischio relativo. Quando l'evento è raro i due numeri sono simili, ma quando l'evento è frequente l'odds ratio esagera l'associazione. Inserire troppe variabili rispetto al numero di eventi osservati, che produce stime instabili. Valutare un modello predittivo solo sulla capacità di distinguere i pazienti a rischio, trascurando la calibrazione, cioè quanto le probabilità stimate corrispondono a quelle osservate.

Un esempio in sanità

Per confrontare i tassi di ospedalizzazione evitabile tra distretti, un modello di Poisson o binomiale negativo con la popolazione come offset e l'aggiustamento per età e sesso permette un confronto equo tra territori con strutture demografiche diverse.

Per chi vuole andare a fondo

La struttura di un GLM

Un modello lineare generalizzato ha tre componenti:

  • una distribuzione della famiglia esponenziale per \(Y_i\) (normale, binomiale, Poisson, gamma…), con media \(\mu_i = E(Y_i)\);
  • un predittore lineare \(\eta_i = \beta_0 + \beta_1 x_{i1} + \dots + \beta_p x_{ip}\);
  • una funzione di legame \(g\) che collega le due: \(g(\mu_i) = \eta_i\).

La regressione lineare è il caso particolare con distribuzione normale e legame identità.

Regressione logistica

$$\log\frac{p_i}{1 - p_i} = \beta_0 + \beta_1 x_{i1} + \dots + \beta_p x_{ip}, \qquad p_i = \frac{1}{1 + e^{-\eta_i}}$$

\(e^{\beta_j}\) è l'odds ratio per un aumento unitario di \(x_j\). Il legame con il rischio relativo, per un rischio di base \(p_0\), è \(RR = OR / (1 - p_0 + p_0\cdot OR)\): i due coincidono solo quando \(p_0\) è piccolo.

Poisson con offset

Per un conteggio \(Y_i\) osservato su una popolazione (o un tempo) \(N_i\):

$$\log E(Y_i) = \log N_i + \beta_0 + \beta_1 x_{i1} + \dots \quad\Longleftrightarrow\quad \log\frac{E(Y_i)}{N_i} = \beta_0 + \beta_1 x_{i1} + \dots$$

Il termine \(\log N_i\) entra con coefficiente fissato a 1 (l'offset), e \(e^{\beta_j}\) è un rapporto tra tassi (incidence rate ratio).

Sovradispersione

La Poisson impone \(\mathrm{Var}(Y) = \mu\). Un indice pratico è il rapporto tra la statistica di Pearson e i gradi di libertà residui:

$$\hat\phi = \frac{1}{n - p - 1}\sum_i \frac{(y_i - \hat\mu_i)^2}{\hat\mu_i}$$

Valori chiaramente sopra 1 indicano sovradispersione. Le soluzioni sono il modello quasi-Poisson, che moltiplica gli errori standard per \(\sqrt{\hat\phi}\), o la binomiale negativa, con \(\mathrm{Var}(Y) = \mu + \mu^2/\theta\).

Stima

I coefficienti si stimano per massima verosimiglianza, con un algoritmo iterativo (IRLS). Il confronto tra modelli annidati si fa con il test del rapporto di verosimiglianza, basato sulla differenza delle devianze.

In R

Logistica e Poisson in R

set.seed(111)
n <- 2000
comorb <- rpois(n, 2)
eta    <- round(runif(n, 50, 90))
p      <- plogis(-3 + 0.45 * comorb + 0.01 * (eta - 70))
riamm  <- rbinom(n, 1, p)

logit <- glm(riamm ~ comorb + eta, family = binomial)
round(exp(cbind(OR = coef(logit), confint.default(logit))), 3)

# Tassi di ospedalizzazione per distretto: Poisson con offset
distr <- data.frame(pop = c(42000, 58000, 31000, 77000, 25000, 64000),
                    anziani = c(0.22, 0.25, 0.28, 0.20, 0.31, 0.24))
set.seed(5)
distr$ricoveri <- rnbinom(6, size = 30,
  mu = distr$pop * 0.004 * exp(3 * (distr$anziani - 0.25)))
pois <- glm(ricoveri ~ anziani + offset(log(pop)),
            family = poisson, data = distr)
sum(residuals(pois, type = "pearson")^2) / df.residual(pois)

Come leggere l'output

Ogni comorbidità in più moltiplica l'odds di riammissione per 1,42 (IC 95%: 1,30–1,55), a parità di età. L'età, con un effetto simulato molto piccolo, ha un odds ratio di 1,007 per anno e un intervallo che include 1.

Nel modello di Poisson per i distretti l'indice di dispersione vale 2,5: i conteggi variano due volte e mezzo più di quanto la Poisson ammetta, perché sono stati generati da una binomiale negativa. In questo caso conviene passare a glm.nb() del pacchetto MASS, oppure a family = quasipoisson.

Devi modellare eventi, conteggi o tassi?

MISSION

Motivati dalla curiosità e dalla passione, il nostro team si impegna ad offrire soluzioni innovative per affrontare sfide e problemi complessi provenienti da diverse aree e settori. Con la nostra esperienza e competenza siamo in grado di rispondere alle esigenze uniche di ogni progetto.

contatti

info@rhoconsulting.it

Social MEdia