Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

An interesting question (with no clear motivation) on X validated wondering why a Gibbs sampler produces NAs… Interesting because multi-layered:

1. The attached R code indeed produces NAs because it calls the Negative Binomial Neg(x¹,p) random generator with a zero success parameter, x¹=0, which automatically returns NAs. This can be escaped by returning a one (1) instead.
2. The Gibbs sampler is based on a Bin(x²,p) conditional for X¹ and a Neg(x¹,p) conditional for X². When using the most standard version of the Negative Binomial random variate as the number of failures, hence supported on 0,1,2…. these two conditionals are incompatible, i.e., there cannot be a joint distribution behind, which makes the limiting behaviour of the Markov chain harder to study. It however seems to converge to a distribution close to zero.
3. When using the less standard version of the Negative Binomial random variate as the number of attempts for the conditional on X², the two conditionals are compatible and correspond to a joint proportional to $x_1^{-1} {x_1 \choose x_2} p^{x_2} (1-p)^{x_1-x_2}$, however this pmf does not sum up to a finite quantity, hence the resulting Markov chain is at best null recurrent, which seems to be the case for p different from ½. This is unclear for p=½.