Вопрос про умножение массива в JAGS

Я работаю с оценками населения с разбивкой по расам и хочу интегрировать стратифицированные по расам группы населения из трех разных источников данных (перепись, PEP и ACS). Я разработал модель для использования информации из всех этих трех источников и оценки истинного населения, которое определяется как gamma.ctr для округа c, времени t и расы r (1= белый и 2 для небелого).

Проблема в том, что данные PEP не стратифицированы по расам, и мне нужно найти способ оценить данные PEP по расам.

Ранее я использовал один из двух других источников (перепись или ACS) для оценки пропорций этнической принадлежности и умножения данных PEP на эти пропорции, чтобы получить стратифицированное по расам население PEP в качестве входных данных для модели.

Теперь я решил сделать это умножение в модели на основе пропорций этнической принадлежности, которые определяются gamma.ctr (истинное население в округе c, год t и раса r), который обновляется всеми источниками данных, а не одним из них.

Поэтому я рассматривал входные данные PEP как peppop.ct (население для округа c и времени t, без разделения по расам). Затем я определил этническую пропорцию как:

      prob[c,t]=gamma.ctr[c,t,1]/(gamma.ctr[c,t,1]+gamma.ctr[c,t,2])

Я хочу умножить данные PEP на эти пропорции, чтобы найти оценки с разбивкой по расам в модели JAGS:

      for (c in 1:Narea){
      for (t in 1:nyears){
      prob.ct[c,t]<-gamma.ctr[c,t,1]/(gamma.ctr[c,t,1]+gamma.ctr[c,1,2])
      peppop.ctr[c,t,1]<-peppop.ct[c,t] * prob.ct[c,t]
      peppop.ctr[c,t,2]<-peppop.ct[c,t] * (1-prob.ct[c,t])
      }
}

Я хочу использовать этот peppop.ctr в качестве переменной ответа позже, например:

      for (t in 1:nyears){
      peppop.ctr[c,t,r] ~ dnorm(gamma.ctr[c,t,r], taupep.ctr[c,t,r])
      }

Но я получаю эту ошибку: Попытка переопределить узел peppop.cpr[1,1,1]

Считается, что причиной этой ошибки является тот факт, что peppop.ctr определяется дважды в левой части уравнения, и ошибка связана с переопределением peppop.ctr в строке:

      peppop.ctr[c,t,1]<-peppop.ct[c,t] * prob.ct[c,t]

Можно ли помочь мне решить эту ошибку. Мне нужно сначала оценить peppop.ctr, а затем использовать эти оценки для обновления параметров gamma.ctr. Любая помощь очень ценится.

0 ответов

Другие вопросы по тегам