In un modello di Poisson, qual è la differenza tra l'utilizzo del tempo come covariata o offset?


18

Di recente ho scoperto come modellare le esposizioni nel tempo usando il registro (ad es.) Del tempo come offset in una regressione di Poisson.

Ho capito che l'offset corrisponde ad avere il tempo come covariata con coefficiente 1.

Mi piacerebbe capire meglio la differenza tra l'uso del tempo come offset o come una covariata normale (stimando quindi il coefficiente). In quale situazione dovrei usare un metodo o l'altro?

AGGIORNAMENTO: Non so se sia interessante, ma ho eseguito una convalida dei due metodi usando dati suddivisi casualmente ripetuti 500 volte e ho notato che l'uso del metodo offset porta a un errore di test più grande.

Risposte:


25

Gli offset possono essere utilizzati in qualsiasi modello di regressione, ma sono molto più comuni quando si lavora con i dati di conteggio per la variabile di risposta. Un offset è solo una variabile che è costretta ad avere un coefficiente di 1 nel modello. (Vedi anche questo eccellente thread CV: quando utilizzare un offset in una regressione di Poisson? )

Se utilizzato correttamente con i dati di conteggio, ciò consente di modellare le tariffe anziché i conteggi . Se questo è interessante, allora è qualcosa da fare. Pertanto, questo è il contesto in cui gli offset vengono utilizzati più frequentemente. Consideriamo un Poisson GLiM con un collegamento di registro (che è il collegamento canonico).

ln(λ)=β0+β1X(countS)ln(λtiome)=β0+β1X(run'teS)ln(λ)-ln(tiome)=β0+β1Xln(λ)=β0+β1X+1×ln(tiome)(Stioll run'teS)ln(λ)=β0+β1X+β2×ln(tiome)when β21(countS un'gun'ion)

(Come puoi vedere, la chiave per usare correttamente un offset è rendere l'offset, non t i m e .) ln(tiome)tiome

Quando il coefficiente su non è 1 , non si modellano più i tassi. Ma poiché β 2( - , 1 ) ( 1 , ) offre una flessibilità molto maggiore per adattare i dati, i modelli che non usano ln ( t i m e ) come offset generalmente si adattano meglio (anche se possono anche troppo vestito). ln(tiome)1β2(-,1)(1,)ln(tiome)


Il fatto che tu debba modellare i conteggi o i tassi dipende davvero da quale sia la tua domanda sostanziale. Dovresti modellare quello che corrisponde a ciò che vuoi sapere.

Per quanto possa significare che non sia 1 , considera un esempio in cui il tempo non è la variabile in questione. Immagina di studiare il numero di complicanze chirurgiche in diversi ospedali. Un ospedale ha molte più complicazioni chirurgiche riportate, ma potrebbero affermare che il confronto non è corretto perché fanno molti più interventi chirurgici. Quindi decidi di provare a controllare per questo. Puoi semplicemente utilizzare il registro del numero di interventi chirurgici come offset, che ti consentirebbe di studiare il tasso di complicanze per intervento chirurgico. È inoltre possibile utilizzare il registro del numero di interventi chirurgici come un'altra covariata. Diciamo che il coefficiente è significativamente diverso da 1 . Se β 2 > 1β211β2>1, quindi gli ospedali che eseguono più interventi chirurgici hanno un più alto tasso di complicazioni (forse perché stanno accelerando il lavoro per fare di più). Se , gli ospedali che hanno il maggior numero di complicanze hanno meno complicazioni per intervento chirurgico (forse hanno i migliori dottori, quindi fanno di più e li fanno meglio). β2<1

Vedere come ciò potrebbe accadere se la variabile in questione fosse il tempo è un po 'più complicata. La distribuzione di Poisson deriva dal processo di Poisson , in cui il tempo tra gli eventi è distribuito esponenzialmente, e quindi esiste una connessione naturale con l'analisi di sopravvivenza. Nell'analisi di sopravvivenza, il tempo agli eventi spesso non viene distribuito come esponenziale, ma il rischio di base può diventare maggiore o minore nel tempo. Quindi, considera un caso in cui stai modellando il numero di eventi che si verificano seguendo un punto di partenza naturale. Se , ciò significa che il tasso di eventi sta accelerando, mentre se β 2 < 1β2>1β2<1, ciò significa che il tasso di eventi sta rallentando.

Per un esempio concreto del primo, immagina una scansione che conteggi il numero di cellule tumorali un periodo di tempo dopo la rimozione chirurgica del tumore iniziale. Per alcuni pazienti, è trascorso più tempo dall'intervento e si voleva tenerne conto. Poiché una volta che un tumore ha riacquistato la propria posizione, inizierà a crescere in modo esponenziale, il tasso aumenterà nel tempo dall'intervento senza ulteriore trattamento.

Per un esempio concreto di quest'ultimo, considerare il numero di persone che muoiono per un focolaio di malattia per il quale non abbiamo cure. All'inizio, molte persone muoiono perché erano più sensibili a quella malattia, o avevano già un sistema immunitario compromesso, ecc. Nel corso del tempo, poiché la popolazione di persone rimaste è meno suscettibile alla malattia, il tasso diminuirà. (Mi dispiace che questo esempio sia così morboso.)


Grazie mille Gung per la tua risposta esaustiva! Per favore dimmi se ho capito bene. Se usiamo il tempo come offset assumiamo una relazione lineare positiva tra tempo ed eventi il ​​cui coefficiente angolare è dato dagli altri predittori esponenziatiy=tiome*exp(Σ1pβpXp+conSt). Invece se usiamo il log time come covariata stimiamo l'effetto esponenziale del tempo sugli eventi, che può essere positivo o negativoy=tiomeβtiome*exp(Σ1pβpXp+conSt). (cont ...)
Bakaburg

1
Therefore why one should assume that the relationship between time and events is linear and growing? Wouldn't be better to estimate the shape of such relationship in every case? I have two more questions: 1. what would it mean to use not log transformed time as covariate instead? 2. (maybe I should edit the question or ask a new one for this) I read that poisson models can actually be used with not integer y too. Thus I could write in R: glm(I(y/time) ~ cov.1 + ... + cov.n, poisson) and have the same results that I have using offset(log(time)). I tried this but I get different coefficients.
Bakaburg

The Poisson dist is for integers only; you should not enter a fraction on the LHS. Not using the log transform means modeling rates of events per exponentially unit time, which will probably never be sensible in the real world.
gung - Reinstate Monica

1
@Bakaburg, time is probably correlated with them. That isn't any different from any other regression modeling situation. I don't see the problem here. You are either interested in modeling average rates or you aren't.
gung - Reinstate Monica

1
@tatami, se hai intenzione di usare il tempo come una covariata (piuttosto che un offset), non devi prendere il registro del tempo. Tuttavia, se si desidera confrontare il risultato con un offset, è necessario utilizzare il registro per renderli comparabili.
gung - Ripristina Monica

7

Le compensazioni temporali di solito possono essere visualizzate come il tuo modello che stima la frequenza di un evento per unità di tempo, con l'offset che controlla per quanto tempo hai osservato soggetti diversi.

Nei modelli Poisson si sta sempre stimando una frequenza in cui succede qualcosa, ma non si riesce mai a osservare direttamente questa frequenza. Si Non arriva a osservare il numero di volte che un evento si verifica più di una certa quantità di tempo. L'offset crea la connessione tra i due concetti.

Ad esempio, hai osservato soggetti che riprendevano cestini per periodi di tempo variabili e hai contato il numero di cestini riusciti per ciascun soggetto. Ciò a cui sei veramente interessato a quanto spesso ogni soggetto affonda un paniere, ovvero il numero di cestini di successo che ogni soggetto si aspetta di affondare ogni minuto, poiché questa è una misura un po 'oggettiva della sua abilità. Il numero di cestini che hai effettivamente visto affondato sarebbe quindi questo tasso stimato volte per quanto tempo hai osservato il soggetto tentando. Quindi puoi pensare in termini di unità della risposta, il numero di cestini al minuto .

È difficile pensare a una situazione in cui si userebbe il tempo osservato come una covariata in una regressione poisson, poiché per sua stessa natura si sta stimando un tasso.

Ad esempio, se voglio valutare l'effetto di essere americano vs europeo (esempio molto sciocco) sul numero di panieri, aggiungere il tempo come covariata mi permetterebbe di valutare l'effetto "indipendentemente" dal tempo trascorso sparando, non è vero? vero? Inoltre mi darebbe anche una stima dell'effetto del tempo sul risultato.

Ecco un esempio che, si spera, evidenzia il pericolo di questo. Supponiamo che americani ed europei, in verità, affondino lo stesso numero di cestini ogni minuto. Ma diciamo che abbiamo osservato ogni europeo per il doppio di ogni americano, quindi, in media, abbiamo osservato il doppio del numero di cestini per ogni europeo.

Se impostiamo un modello che include parametri sia per il tempo osservato che un indicatore per "è europeo", entrambi i modelli spiegano i dati:

E(cesti)=2ct+0XEropean
E(cesti)=0t+2cXEropean

(dove c è una costante, che è la vera velocità con cui entrambi i tipi di giocatori fanno i cestini).

Come statistico, in questa situazione, vogliamo davvero che il nostro modello ci informi che non esiste alcuna differenza statistica tra il tasso che gli europei fanno cestini e il tasso che gli americani fanno cestini. Ma il nostro modello non è riuscito a farlo e siamo rimasti confusi.

Il problema è che noi sappiamo qualcosa che il nostro modello non non conosce. Cioè, noi sappiamo che se si osserva lo stesso individuo per il doppio del tempo, che, nell'attesa, si farà il doppio dei canestri. Dal momento che lo sappiamo, dobbiamo parlarne al nostro modello. Questo è ciò che l'offset realizza.

Forse usare il metodo offset è appropriato quando sappiamo che gli eventi accadono uniformemente nel tempo!

Sì, ma questo è un presupposto del modello di poisson stesso . Dalla pagina di Wikipedia sulla distribuzione di Poisson

la distribuzione di Poisson, dal nome del matematico francese Siméon Denis Poisson, è una distribuzione di probabilità discreta che esprime la probabilità che un determinato numero di eventi si verifichi in un intervallo di tempo e / o spazio fisso se tali eventi si verificano con una frequenza media nota e indipendentemente da il tempo trascorso dall'ultimo evento .


2
Grazie per la tua risposta. Ma usare il tempo come covariata non mi darebbe la stessa risposta? Ad esempio, se voglio valutare l'effetto di essere americano vs europeo (esempio molto sciocco) sul numero di panieri, aggiungere il tempo come covariata mi permetterebbe di valutare l'effetto "indipendentemente" dal tempo trascorso sparando, non è vero? vero? Inoltre mi darebbe anche una stima dell'effetto del tempo sul risultato. A volte il tempo non è sempre importante per una variabile di conteggio, ad esempio quando gli eventi accadono tutti all'inizio del periodo di osservazione.
Bakaburg,

Forse usare il metodo offset è appropriato quando sappiamo che gli eventi accadono uniformemente nel tempo!
Bakaburg,

1
@Bakaburg Ho aggiunto una risposta tentata. Spero possa essere d'aiuto!
Matthew Drury,
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.