#A Gibbs sampler for the BLNE model without individual heterogeneity: #Number of samples in chain L=220000 #Length of burn-in burn=20000 #Set random walk length for \omega_U omega_U=5 #Original Data y=c(3,1,2,1,1,3,2,1,3,1,3,5,1,1,4,5,3,6,2,2,5,5,5) k=7 T=45 #Augmented data with M-nstar individuals with y=0 M=80 nstar=length(y) Aug=M-nstar y=c(y,rep(0,Aug)) #Define function "DataAugBin" for MCMC algorithm DataAugBin=function(L,y,k,T,M,omega_U) { mu=rep(0,L) q=rep(0,M) nstar=sum(y!=0) q[1:nstar]=1 psi=rep(0,L) n=rep(0,L) N=rep(0,L) U=rep(0,L) mu[1]=runif(1) psi[1]=runif(1) n[1]=nstar maxU=1000 #set maximum value for U[1] U[1]=sample(seq(ceiling((T/k)),maxU),1) N[1]=U[1]+n[1] for (i in 2:L) { psi[i]=rbeta(1,(1+sum(q)),(1+M-sum(q))) pq=(1-mu[i-1])^k*psi[i]/((1-mu[i-1])^k*psi[i]+(1-psi[i])) q[(nstar+1):M]=rbinom((M-nstar),1,pq) n[i]=sum(q) mu[i]=rbeta(1,1+sum(y)+T,1+k*(n[i]+U[i-1])-sum(y)-T) #M-H step on U using uniform random walk Ustar=U[i-1]+sample(seq(-omega_U,omega_U,1),1) if (Ustar*k=ftheta]=1 R[fthetastar