Skip to content

MCMCglmm and phylogeny - huge variance problem

4 messages · Szymek Drobniak, Jarrod Hadfield

#
Dear mixed modellers,

I'm trying to fit a comparative meta-analysis and everything's fine
but I'm getting several warnings (some of which I don't quite
understand and can't tell if they're causing the problem) and a weird
result with huge animal (ergo phylogeny-related) variance. Below is
the model and the prior, and of course the output with summary. Any
idea if this huge variance might be due to these warnings  (relating
to the tree I guess) or due to the data (which has has high variance
anyway). Could prior expansion fix these problems?

Szymek


#########(code)

prior.fil <- list(R=list(V=1,n=0.002),
G=list(G1=list(V=1,n=0.002),G2=list(V=1,n=0.002),G3=list(V=1,n=0.002)))

meta.fil <- MCMCglmm(Zr~1, random=~ref+repeat+animal, prior=prior.fil,
pedigree=tree, mev=data$mev, data=data, verbose=F,
nitt=3000000, burnin=1000000, thin=800)


###########(summary of the model)

 Iterations = 100001:4999501
 Thinning interval  = 500
 Sample size  = 9800

 DIC: 256.8579

 G-structure:  ~ref

    post.mean  l-95% CI u-95% CI eff.samp
ref   0.03544 0.0002057   0.1017     9800

               ~repeat.

        post.mean  l-95% CI u-95% CI eff.samp
repeat.   0.01121 0.0001536  0.04053     9800

               ~animal

       post.mean  l-95% CI  u-95% CI eff.samp
animal 3.765e+15 1.450e+15 4.504e+15     9507

 R-structure:  ~units

      post.mean l-95% CI u-95% CI eff.samp
units    0.2345   0.1703   0.3107     9502

 Location effects: Zr ~ 1

            post.mean  l-95% CI  u-95% CI eff.samp pMCMC
(Intercept)    -740.7 -453419.4  464404.3     9800 0.988
############(warnings)

Warning messages:
1: In inverseA(pedigree, nodes = nodes, scale = scale) :
  no branch lengths: compute.brlen from ape has been used
2: In `levels<-`(`*tmp*`, value = c("JJJ", "DDD", "III", "GGG", "",  :
  duplicated levels will not be allowed in factors anymore
3: In MCMCglmm(Zr ~ 1, random = ~ref + repeat. + animal, prior = prior.fil,  :
  some combinations in animal do not exist and 50 missing records have
been generated
4: In `[<-.data.frame`(`*tmp*`, dim(data)[1] -
(dim(missing.combinations)[1] -  :
  provided 50 variables to replace 2 variables
5: In `[<-.factor`(`*tmp*`, iseq, value = c("JJJ", "1", "JJJ", "1",  :
  invalid factor level, NAs generated
6: In `levels<-`(`*tmp*`, value = c("JJJ", "DDD", "III", "GGG", "",  :
  duplicated levels will not be allowed in factors anymore
#
Hi, 

There seems to be something amiss with the tree. Do you expect there to
be branch lengths? Do you get warning messages outside of MCMCglmm if
you use compute.brlen on the phylogeny?

Jarrod
On Wed, 2011-07-06 at 16:45 +0200, Szymek Drobniak wrote:

  
    
#
Hi,

I tried compute.brlen but this works fine and computes branch lengths
without any problem. I've used such trees before (without branch
lengths, just topology) and they worked. Is it possible that this
"duplicated levels" thing messes with everything?

sz.
On 6 July 2011 17:11, Jarrod Hadfield <j.hadfield at ed.ac.uk> wrote:

  
    
#
Hi, 

There definitely seems to be a problem but its hard to figure out what
it is. Could you attach the tree (and data)?


Jarrod
On Wed, 2011-07-06 at 17:27 +0200, Szymek Drobniak wrote: