2014-01-07 3 views
0

Я новичок в Python, и у меня проблемы с переводом модели, которую я написал в R на язык Python. Если у кого-то есть предложения по ресурсам или примеры кода, которые могут помочь, я бы очень признателен. Я видел некоторые фрагменты кода и текста в файлах справки и т. Д., Но ни один из них не является достаточно аннотированным или достаточно конкретным для новичков на Python. Следующая модель представляет собой модель обилия N-смеси, смоделированную после Royle (2004): модели N-смесей для оценки размера популяции из пространственно реплицированных отсчетов. В основном он описывает модель пуассоновской/биномиальной смеси, где-в где Z_i - обилие уровня водно-болотных угодий и рассматривается как случайная величина с распределением Пуассона. Наблюдаемое обилие выводок (yij) на сайте i и во время посещения j затем следует за биномиальным распределением с индексом Z_i и параметром успеха p_ij. Изобилие 〖(λ〗 _i) моделируется по лог-ссылке как функция ковариатов, а вероятности обнаружения моделируются через логит-связь в зависимости от b ковариатов.Модели N-смесей в Python

model { 

## Priors 

a0 ~ dunif(-5, 5) 
a1~ dunif(-5, 5) 
a2 ~ dunif(-5, 5) 
a3~ dunif(-5, 5) 
b0 ~ dunif(-5, 5) 
b1~ dunif(-5, 5) 
b2~ dunif(-5, 5) 

## Model 

# State process 
for(i in 1:5175) { 
logit(psi[i]) <- min(max(a0 + a1*wetarea[i] + 
    a2*percentcover[i] + 
    a3*(year[i]), -99), 99) 

Z[i] ~ dbern(psi[i]) 

# Detection process 
for(j in 1:3) { 
    logit(p[i, j]) <- b0 + b1*emergentcover[i, j] + 
     b2*time[i] 
    y[i, j] ~ dbin(p[i, j], Z[i]) 
    } 
} 


## Derived parameters 
Zsum <- sum(Z[]) # Number of sites occupied 
PAO <- Zsum/100 # Proportion of sites occupied (aka PAO) 

} 

Заранее спасибо за любую помощь/предложения

ответ

0

Есть несколько примеров на PyMC wiki, включая размещение и смесь моделей. Я бы посмотрел на них; ваша модель выглядит довольно просто.