DIC for Measurement Error Growth Models

  • John

    John - 2011-07-05

    I'm using the jags.samples function to obtain DIC values for several growth
    models that assume age is not known perfectly (i.e. latent variable). The
    model I'm using is as follows:



    for (i in 1:n)


    y_ ~ dnorm(meany_,tauy)

    meany_ <- Linf(1-exp(-k(age_-to)))

    x_ ~ dnorm(age_,taux_)I(0, )

    taux_ <- pow(sigmax_,-2)

    sigmax_ <- age_ * cv

    age_ ~ dunif(0,10)


    Linf ~ dunif(800,1200)

    k ~ dunif(0,1)

    to ~ dunif(-3,1)

    cv ~ dunif(0,10)

    tauy <- pow(sigmay,-2)

    sigmay ~ dunif(0,1000)


    However, I get NaN for pD using observed otolith-estimated ages and an
    extremely inflated estimate of pD using scale-estimated ages.

    Any help or suggestions would be greatly appreciated.


  • Martyn Plummer

    Martyn Plummer - 2011-07-18

    DIC tends to break down in missing data models because it treats the missing
    data as unknown parameters. The large pD values are a reflection of the fact
    that most of the information about the missing ages comes from the outcome y
    and not the covariate x. In this case DIC is a poor approximation to the
    penalized deviance and should not be used - the necessary asymptotic
    conditions for it to work are not satisfied.

  • John

    John - 2011-08-04

    Thanks Dr. Plummer. I'll try some other model discrimination statistic,
    perhaps using cross validation.


Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.

No, thanks