É permitido incluir o tempo como preditor em modelos mistos?

10

Eu sempre acreditei que o tempo não deveria ser usado como um preditor em regressões (inclusive gam's), porque, então, alguém simplesmente "descreveria" a tendência em si. Se o objetivo de um estudo é encontrar parâmetros ambientais como temperatura, etc., que expliquem a variação da atividade de um animal, digamos, então eu me pergunto: como o tempo pode ser útil? como proxy para parâmetros não medidos?

Algumas tendências no tempo de dados de atividades de botos do porto podem ser vistas aqui: -> Como lidar com as lacunas de uma série temporal ao fazer o GAMM?

meu problema é: quando incluo tempo no meu modelo (medido em dias julianos), então 90% de todos os outros parâmetros se tornam insignificantes (o ts-shrinkage mais suave do mgcv os expulsa). Se eu deixar um tempo, então alguns deles são significativos ...

A questão é: o tempo é permitido como preditor (talvez até necessário?) Ou está atrapalhando minha análise?

Muito obrigado antecipadamente

Jens
fonte

Respostas:

12

O tempo é permitido; se é necessário dependerá do que você está tentando modelar? O problema que você tem é que você possui covariáveis ​​que, juntas, parecem se encaixar na tendência dos dados, o que o Time pode fazer da mesma maneira, mas usando menos graus de liberdade - portanto, elas são eliminadas em vez do Time.

Se o interesse é modelar o sistema, o relacionamento entre a resposta e as covariáveis ​​ao longo do tempo, em vez de modelar como a resposta varia ao longo do tempo, não inclua o Tempo como covariável. Se o objetivo é modelar a mudança no nível médio da resposta, inclua Tempo, mas não inclua a covariável. Pelo que você diz, parece que você deseja o primeiro, não o último, e não deve incluir o Tempo no seu modelo. (Mas considere as informações extras abaixo.)

Existem algumas ressalvas. Para que a teoria se mantenha, os resíduos devem ser iid (ou id, se você relaxar a suposição de independência usando uma estrutura de correlação). Se você estiver modelando a resposta em função das covariáveis ​​e elas não modelarem adequadamente nenhuma tendência nos dados, os resíduos terão uma tendência, o que viola as suposições da teoria, a menos que a estrutura de correlação ajustada possa lidar com essa tendência.

Por outro lado, se você estiver modelando a tendência apenas na resposta (apenas incluindo o Tempo), pode haver variação sistemática nos resíduos (sobre a tendência ajustada) que não é explicada pela tendência (Tempo), e isso também pode violar as suposições. para os resíduos. Nesses casos, pode ser necessário incluir outras covariáveis ​​para renderizar os resíduos iid

Por que isso é um problema? Bem, quando você está testando se o componente de tendência, por exemplo, é significativo ou se os efeitos das covariáveis ​​são significativos, a teoria usada assumirá que os resíduos são iid. Se eles não forem iid, as suposições não serão atendidas. Os valores de p serão enviesados.

O ponto de tudo isso é que você precisa modelar todos os vários componentes dos dados para que os resíduos sejam iid para a teoria que você usa, para testar se os componentes ajustados são significativos, para serem válidos.

Como exemplo, considere dados sazonais e queremos ajustar um modelo que descreva a variação de longo prazo nos dados, a tendência. Se modelarmos apenas a tendência e não a variação cíclica sazonal, não poderemos testar se a tendência ajustada é significativa porque os resíduos não serão iid. Para esses dados, precisaríamos ajustar um modelo com um componente sazonal e uma tendência componente e um modelo nulo que continha apenas o componente sazonal. Em seguida, compararíamos os dois modelos usando um teste de razão de verossimilhança generalizada para avaliar a significância da tendência ajustada. Isso é feito usando anova()os $lmecomponentes dos dois modelos instalados gamm().

Gavin Simpson
fonte
Caro Gavin, muito obrigado por seus comentários muito úteis. Espero que eu possa ajudá-lo em breve também;) quando eu tento o GLRT com anova ele me diz "objeto 'fixo" não encontrado' :(
Jens
11
@Jens a chamada deve ser anova(mod1$lme, mod2$lme). Se você estiver ajustando um modelo não-Gaussiano, isso pode não funcionar, pois não há uma verdadeira probabilidade de log nos métodos PQL, aumente a quase-probabilidade no nome PQL. Esse é um dos motivos para usar o gamm4 , mas você precisa fazer algo sobre a estrutura de correlação, pois o lme4 não os permite.
Gavin Simpson