[R-sig-ME] MCMCglmm & multilevel multivariate models

Jarrod Hadfield j.hadfield at ed.ac.uk
Tue Apr 24 17:26:59 CEST 2012


Hi,

1) I like Gelman at al's Bayesian Data Analysis

2) MCMCglmm does not deal with missing values in the predictors

3) a) time could be added, and you probably want to interact it with trait.

3) b) & 4) family=c("ordinal", "ordinal")

Jarrod


  Quoting Eiko Fried <torvon at gmail.com> on Mon, 23 Apr 2012 14:25:42 +0200:

> Some questions about MCMCglmm:
>
> (1) I worked myself thoroughly through the wonderful documentation (both
> the overview and the course notes), but found no actual R output with
> explanations what exactly means what. Are there any examples somewhere
> else? I'm no expert in Bayesian statistics, to whom the output will most
> likely be extremely straightforward.
>
> (2) Missing Values
> "Error in MCMCglmm(phq1 ~ Neuro, random = ~time, family = "ordinal", data =
> data) :
> missing values in the fixed predictors"
>
> I do have between 2% and 30% missings on my response variables (the later
> in the study the more missings, as typical in depression studies), but that
> doesn't seem to be the problem. The fixed covariates are, they have between
> 1% and 20% missings. I read a paper that stated FIML is better than
> multiple imputation, so I left the missings (MPLUS handles them easily).
> I am not sure what MCMCglmm does with missing values and can't find
> documentation, could you recommend what I should do?
>
> (3) Model
> (a) You suggested:
>
> m1<-MCMCglmm(cbind(y1,y2)~trait-1+trait:x1+trait:z1, random=~us(trait):id,
> rcov=~cor(trait):units)
> I do understand what it does, however wonder whether "time" (the variable
> denominating my measurement points) is already covered by converting data
> into units and traits? It seems counter-intuitive not to mention time as
> covariate in the analysis, seeing that it is usually done in nlme and lme4.
> (b) I don't have to mention "family=ordinal"?
>
> (4) Family
> "m1<-MCMCglmm(cbind(phq1,phq2)~trait-1+trait:Neuro+trait:ALE4,random=~us(trait):UserID,
> rcov=~cor(trait):units, data=data)"
> "Error in MCMCglmm(cbind(phq1, phq2) ~ trait - 1 + trait:Neuro +
> trait:ALE4,: family must have the same length as the number of responses"
> Adding "family=ordinal" doesn't solve this. Probably a beginner's error,
> but I can't solve it.
>
> Thank you very much for your time!
>
> On 20 April 2012 18:42, Jarrod Hadfield <j.hadfield at ed.ac.uk> wrote:
>
>> Hi,
>>
>> If your data are laid out like:
>>
>> y1 y2 id time  x1  z1
>>
>> 0  0  a   1    1   0
>> 0  1  a   2    1   0
>> 1  1  a   3    1   1
>> 3  2  b   1    2   1
>> 0  3  b   2    2   1
>> 1  0  b   3    2   0
>>
>> for example then:
>>
>> m1<-MCMCglmm(cbind(y1,y2)~**trait-1+trait:x1+trait:z1,
>> random=~us(trait):id, rcov=~cor(trait):units)
>>
>> is probably the most complete ordinal model, with separate regressions of
>> x1 and z1 on each response, correlated subject effects and correlated
>> observation effects.
>>
>> Regarding Shige's earlier comment I would be very very careful about
>> fitting fully parameterised high dimensional models, and would try and
>> simplify somehow.
>>
>> Cheers,
>>
>> Jarrod
>>
>>
>>
>>
>> Quoting Eiko Fried <torvon at gmail.com> on Fri, 20 Apr 2012 16:42:29 +0200:
>>
>>  Stuart kindly hinted at MCMCglmm as a possible solution for the model I
>>> would like to calculate.
>>>
>>> I studied the MCMCglmm package and wonderfully detailed documentation in
>>> the last days, but was not able to answer a couple of questions, the two
>>> most important ones being:
>>>
>>> (1) How would a sample syntax look like for both a (a) multivariate model
>>> which is (b) at the same time repeated measure, including subjects as
>>> random effect also?
>>>
>>> (2) How does one differentiate between time-varying and time-invariant
>>> covariates in MCMCglmm?
>>>
>>> My goal is to calculate something like this:
>>> * y1 - y9; they are intercorrelated ordinal (0,1,2,3) items from a
>>> psychological screening instrument, left-skewed (plenty of 0s, few 3s)
>>> * x1 - x5: baseline covariates (ordered and continuous)
>>> * z1 - z10: time-varying dichotomous covariates (life events, assessed at
>>> every measurement point for the time between this and the last measurement
>>> point)
>>> * 5 measurement points
>>> * heterogeneity in intercepts and slopes between subjects, so this should
>>> also go in as random effect.
>>>
>>> The current hypothesis in the literature is that the predictors affect the
>>> outcome variables in a similar fashion (because the outcome variables load
>>> onto the same factor), my main goal is in showing that this is not the
>>> case, and that there are differential effects of the predictors on the
>>> response variables.
>>>
>>> Any advice as to how to do this in MCMCglmm would be highly appreciated.
>>>
>>> Thank you
>>> Eiko
>>>
>>>        [[alternative HTML version deleted]]
>>>
>>> ______________________________**_________________
>>> R-sig-mixed-models at r-project.**org  
>>> <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.
>>
>>
>>
>



-- 
The University of Edinburgh is a charitable body, registered in
Scotland, with registration number SC005336.



More information about the R-sig-mixed-models mailing list