[R-sig-ME] MCMCglmm multivariate meta-analysis with covariance
Jarrod Hadfield
j.hadfield at ed.ac.uk
Thu Oct 20 20:29:15 CEST 2016
Hi Jon,
MCMCglmm fits random-effect meta-analysis (I think this is what it is
caused) which assumes that even after correcting for sampling errors
there will be some 'real' between-observation variance (and in your case
covariance). I'm not sure what you are modelling, but at least in the
types of data I work with I can't really believe there isn't some
'real' between-observation variance.
Cheers,
Jarrod
On 20/10/2016 19:09, Jon Bischof wrote:
> Jarrod,
>
> Thanks for your detailed response! Your understanding of my model is
> correct: it's just a single grouping metaanalysis in two dimensions:
>
> (y_i,1, y_i,2) ~ Normal ( (theta_i,1, theta_i,2), V_i )
> (theta_i,1, theta_i,2) ~ Normal ( (mu_1, mu_2), S )
>
> where V_i is a known covariance matrix of measurement error.
>
> As a new user of mcmcglmm I will need some time to experiment with
> your idea to confirm that it works. My understanding, however, was
> that residual error was specified in the R matrix and not the G
> matrix. Do we need to fix R as well? Will we still be able to estimate S?
>
> Thanks!
> Jon
>
> On Tue, Oct 18, 2016 at 11:45 PM, Jarrod Hadfield <j.hadfield at ed.ac.uk
> <mailto:j.hadfield at ed.ac.uk>> wrote:
>
> Hi Jon,
>
> If you have the covariance matrix for your observations, then take
> its inverse and store it in sparse format:
>
> Cinv_sparse<-as(Cinv, "dgCMatrix")
>
> where Cinv is the inverse in dense format. When you say
> multivariate do you mean something like an explicit bivariate
> response such that the fixed formula is of the form cbind(y_1,
> y_2)~...? If so you need to organise your data in long format and
> pass a single response vector. You can include a variable that
> denotes whether the observation is y_1 or y_2 and use it like
> "trait", and include a variable that denotes the original row for
> the observation and use it like "units". If we call this second
> variable "row" then having fit "row" as a random effect, and pass
> the argument ginverse=list(row=Cinv_sparse) to MCMCglmm. You will
> also need to fix the "row" variance to one in the prior:
>
> G1=list(V=1, fix=1)
>
> Presumably covariances are only non-zero between observations from
> the same original row? If so make sure the sparse Matrix also
> represents this: numerical issues during inversion may cause zero
> entries to differ slightly from zero and hence not be represented
> as zero.
>
> Cheers,
>
> Jarrod
>
>
>
>
> Then you can fit the term ~trait:units
>
>
>
>
>
> On 19/10/2016 05:41, Jon Bischof wrote:
>
> I'm interested in fitting a multivariate meta-analysis model with
> correlated measurement error. This means fixing the error to a
> covariance
> matrix per row.
>
> I saw this post
> <https://stat.ethz.ch/pipermail/r-sig-mixed-models/2013q2/020180.html
> <https://stat.ethz.ch/pipermail/r-sig-mixed-models/2013q2/020180.html>>
> on
> the mailing list about non-correlated outcomes, but the noise
> correlation
> is too large to ignore in my use case. Professor Hadfield
> implies in the
> post that it is possible but "complicated". Does anyone know
> how to do it?
>
> Thanks!
> Jon Bischof
>
> [[alternative HTML version deleted]]
>
> _______________________________________________
> R-sig-mixed-models at r-project.org
> <mailto:R-sig-mixed-models at r-project.org> mailing list
> https://stat.ethz.ch/mailman/listinfo/r-sig-mixed-models
> <https://stat.ethz.ch/mailman/listinfo/r-sig-mixed-models>
>
>
>
> --
> The University of Edinburgh is a charitable body, registered in
> Scotland, with registration number SC005336.
>
>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: not available
URL: <https://stat.ethz.ch/pipermail/r-sig-mixed-models/attachments/20161020/c4707692/attachment-0001.pl>
More information about the R-sig-mixed-models
mailing list