JAGS में सेंसरिंग / ट्रंकेशन


10

मैं एक सवाल है कि JAGS में सेंसरिंग समस्या को कैसे ठीक किया जाए।

मैं सामान्य रूप से एक बीवरिएट मिश्रण का निरीक्षण करता हूं जहां एक्स मान माप त्रुटि है। मैं सेंसर किए गए मूल्यों के वास्तविक अंतर्निहित 'साधनों' को मॉडल करना चाहूंगा।

एक्सटीआरयू+ε=एक्सरोंआरv ε~एन(0,रों=.5)

यहाँ अब मेरे पास क्या है:

 for (i in 1:n){
   x[i,1:2]~dmnorm(mu[z[i],1:2], tau[z[i],1:2,1:2])
   z[i]~dcat(prob[ ])
 }

Y में माप त्रुटि भी है। मैं ऐसा कुछ करना चाहता हूं:

 for (i in 1:n){
   x_obs[i] ~ dnorm(x_true[i],prec_x)I(x_true[i],)
   y_obs[i] ~ dnorm(y_true[i],prec_y)
   c(x_true[i]:y_true[i])~dmnorm(mu[ z [ i ],1:2], tau[z[i],1:2,1:2])
   z[i]~dcat(prob[ ])
 }

 #priors for measurement error
 e_x~dunif(.1,.9)
 prec_x<-1/pow(e_x,2)
 e_y~dunif(2,4)
 prec_y<-1/pow(e_y,2)

जाहिर है JAGS में c कमांड मान्य नहीं है।

अग्रिम में धन्यवाद।


3

जवाबों:


9

शायद यह आप क्या देख रहे हैं:

x_obs[i] ~ dnorm(x_true[i],prec_x)T(x_true[i], )

JAGS में सेंसर और ट्रंकेशन दोनों के विकल्प हैं। ऐसा लगता है कि आप काट-छांट करना चाहते हैं, क्योंकि आप जानते हैं कि एक-प्रायोरी कि एक विशिष्ट दायरे में अवलोकन झूठ

कैसे छंटनी और सेंसर का उपयोग करता है के बारे में अधिक जानकारी के लिए उपयोगकर्ता के मैनुअल को पढ़ें ।


3

सुझाव के लिए धन्यवाद David। मैंने इस सवाल को JAGS समर्थन मंच पर पोस्ट किया और एक उपयोगी उत्तर मिला। कुंजी 'सच्चे' मूल्यों के लिए दो आयामी सरणी का उपयोग करना था।

for (j in 1:n){ 
  x_obs[j] ~ dnorm(xy_true[j,1], prec_x)T(xy_true[j,1],) 
  y_obs[j] ~ dnorm(xy_true[j,2], prec_y)
  xy_true[j, ] ~ dmnorm(mu[ z [j],1:2], tau[z[j],1:2,1:2]) 
  z[j]~dcat(prob[ ]) 
}

 #priors for measurement error 
 e_x~dunif(.1,.9)
 prec_x<-1/pow(e_x,2)
 e_y~dunif(2,4)
 prec_y<-1/pow(e_y,2) 
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.