2016-07-29 5 views
1

イベントデータに簡単な時間があり、共変量はありません。私はそれにワイブル分布を合わせようとしていました。だから私は次のコードを持っています。私はイニシャルをロードするまで、すべてが良く見えます。 "このチェーンに初期化されていない変数が含まれています"と表示されます。しかし、私は理解していません。私はWeibull distには2つのパラメータしかないと思います。私はすでにそれらをすべて指定しました。アドバイスをお願いしますか?ありがとう!Winbugsのシンプルなモデルですが、「このチェーンには初期化されていない変数が含まれています」と書かれています

model 
{ 
    for(i in 1 : N) {      
      t[i] ~ dweib(r, mu)I(t.cen[i],) 
    } 
    mu ~ dexp(0.001) 
    r ~ dexp(0.001) 
} 
# Data 
list(
t.cen=c(0,3.91,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,21.95,23.98,33.08), 
t=c(2.34,NA,5.16,5.63,6.17,6.8,7.03,8.05,8.13,8.36,8.83,10.16, 
10.55,10.94,11.48,11.95,13.05,13.59,16.02,20.08,NA,NA, 
NA), 
N=23 
) 
# Initial values 
list(
r=3,mu=3 
) 

答えて

0

他の初期化されていない変数は、tのベクトルの欠損(NA)値です。 BUGS言語はデータとパラメータを区別せず、値NAのデータとして何かを供給することは、それをデータとして供給しないことと同じです。

+0

あなたの答えをありがとう!だから私はこれを解決すべきでしょうか?私が "geninits"をクリックすると、私のためにイニシャルを生成することができますか?私はそれがそれらのNA値を生成しようとするのではないかと心配しています。 – user3669725

+0

WinBUGSが間隔の検閲の制約を満たす初期値を生成するのに十分スマートであると仮定すると、最良の解決策はおそらくgen initsを使用することです。それ以外の場合は、tのベクトルに独自の初期値を指定する必要があります。観測されたtの値がNAの初期値に対応することを確認してください。サンプラーが実行されると、最初の値をすばやく忘れるので、実際にどのように実行するかは関係ありません。 –

+0

ありがとう!私はgen initsを使用します。 – user3669725

関連する問題