[R-meta] correlated outcomes

Luke Martinez m@rt|nez|ukerm @end|ng |rom gm@||@com
Sat Oct 9 20:24:49 CEST 2021


Dear Reza,

This is, as always, incredibly insightful!

Thank you so much,
Luke

On Fri, Oct 8, 2021 at 12:44 PM Reza Norouzian <rnorouzian using gmail.com> wrote:
>
> Dear Luke,
>
> Imagine you didn't want to allow for correlated levels of outcome across the studies. Then, as a starting point, how would you have specified the random effects?
>
> This way:
> A) random = ~ 1 | labID / studyID / outcomeID
>
> Or, this way:
> B) random = ~ 1 | studyID / outcomeID
>
> As a starting point, when we specify random effects using a multivariate specification at some level, it's helpful to consider that we still want to account for potential heterogeneity at any other possible levels in the data.
>
> By fitting a model like:
>
> random = ~ outcomeID | interaction(labID,studyID)
>
> you essentially are ignoring the "labID" level altogether. If you want to allow for levels of outcome to correlate with one another only at the studyID level but not the labID level, then, you may want to try something like:
>
> random = list(~1|labID, ~ outcomeID | interaction(labID,studyID))
>
> This specification is the multivariate equivalent of specification (A), which you may have considered as a starting point, if you *didn't* want to consider correlated random effects for outcome, but *did* want to include labID as a potential higher level in your model.
>
> Finally, if for some studies, you have repetition of the same outcomeID in each studyID, then, a starting point with a purely nested intercept-only model could be an extension of (A) specification:
>
> random = ~ 1 | labID / studyID / outcomeID / rowID
>
> with the multivariate equivalent of it being:
>
> random = list(outcomeID | interaction(labID,studyID),  ~ 1 | labID, ~ 1 | rowID)
>
> or equivalently to save a couple of keystrokes:
>
> random = list(outcomeID | interaction(labID,studyID),  ~ 1 | labID/rowID)
>
>
> I hope it helps,
>
> Reza
>
>
> On Thu, Oct 7, 2021 at 11:12 PM Luke Martinez <martinezlukerm using gmail.com> wrote:
>>
>> Hello All,
>>
>> A quick question. I have some labs that have conducted multiple
>> studies each targeting several outcomes, like:
>>
>> labID  studyID  outcomeID
>> 1         1            1
>> 1         1            2
>> 1         2            1
>> 1         2            2
>> 2         1            2
>> 2         1            3
>>
>> Then, can I allow correlated random-effects for outcome at the labID
>> level?  like:
>>
>> random = list(~ outcomeID | labID, ~ outcomeID | interaction(labID,studyID) )
>>
>> A part of me says that "~ outcomeID | labID" doesn't make sense,
>> because outcomes are only nested in studies, in which case, I should
>> only use:
>>
>> random = ~ outcomeID | interaction(labID,studyID)
>>
>> Am I correct in my thinking?
>>
>> Thanks,
>> Luke
>>
>> _______________________________________________
>> R-sig-meta-analysis mailing list
>> R-sig-meta-analysis using r-project.org
>> https://stat.ethz.ch/mailman/listinfo/r-sig-meta-analysis



More information about the R-sig-meta-analysis mailing list