Lmer para projeto longitudinal

Sep 18 2020

Eu tenho um conjunto de dados longitudinal onde tenho as seguintes variáveis ​​para cada assunto:

IV: 3 factores ( factorA, factorB, factorC, factorD), cada um medido duas vezes, no início e no fim de uma intervenção.

DV: uma variável de resultado (comportamento), também medido duas vezes, no início e no final da intervenção.

Eu gostaria de criar um modelo que usa a mudança no fator A, fator B, fator C, fator D (mudança do início ao fim da intervenção) para prever a mudança no comportamento (novamente do início ao fim).

Pensei usar os valores delta de factorA, factorB, factorC, factorD(do pré para o pós-intervenção) e usar estes valores delta para prever os valores delta de D1. Eu também gostaria de covary-out os valores absolutos de cada fator ( A, B, Ce D) (por exemplo, usando apenas o valor no início da intervenção para cada fator) para se certificar de que representam a mudança que os valores absolutos (em vez de a mudança) desses IVs pode ter no DV.

Aqui está meu conjunto de dados: insira a descrição da imagem aqui

Aqui está meu modelo até agora:

Model <- lmer(Delta_behavior ~ Absolute_factorA + Absolute_factorB + 
              Absolute_factorC + Absolute_factorD + Delta_factorA + 
              Delta_factorB + Delta_factorC + Delta_factorD + 
              (1|Subject),a)

Acho que estou fazendo algo errado porque recebo este erro:

Erro: o número de níveis de cada fator de agrupamento deve ser <número de observações

O que estou fazendo de errado? O conjunto de dados está estruturado de maneira estranha? Não devo usar os valores delta? Devo usar outro teste (não lmer)?

Respostas

1 BenBolker Sep 18 2020 at 22:12

Como você reduziu seus dados a uma única observação por sujeito, não precisa usar um modelo de vários níveis / misto. O motivo do lmererro é que, nessa situação, a variância entre assuntos é confundida com a variância residual.

Você provavelmente pode ir em frente e usar um modelo linear ( lm) para esta análise.

Mais detalhes técnicos

A equação para a distribuição da iésima observação é algo como [fixed-effect predictors] + eps(subject(i)) + eps(i)onde eps(subject(i))está o termo de erro normal do sujeito associado com a iésima observação, e eps(i)é o erro residual Normal associado com a iésima observação. Se tivermos apenas uma observação por sujeito, cada observação terá dois termos de erro que são exclusivos dela. A soma de duas variáveis ​​normais com média zero e variâncias de V1 e V2 também é normal com média zero e variância V1 + V2 ... portanto, V1 e V2 são conjuntamente não identificáveis . Você pode usar lmerControlpara substituir o erro se realmente quiser; lmerirá retornar uma combinação arbitrária de V1, V2estima que soma a variação total.

Há um exemplo semelhante ilustrado aqui .