function [Mbeta,Ms2,stds,sample]=logit_re2(ynx,m) % fit of random effects model for conduct example of Chapter 3 %------------------------------------------------------------- % Jim Albert - May 15, 1998 %------------------------------------------------------------- p2=size(ynx,2); k=size(ynx,1); p=p2-2; y=ynx(:,1); n=ynx(:,2); x=ynx(:,3:p2); [beta,var]=breg_mle(ynx,'l'); aa=chol(var); B=zeros(k,1); s2=1; mu=0; a=5; b=1.5; c=2*ones(k,1); Mbeta=zeros(m,p); Ms2=zeros(m,1); sample=zeros(k,5); stds=zeros(m,1); h=waitbar(0,'Simulation in progress'); for i=1:m lp=x*beta+B; pr=exp(lp)./(1+exp(lp)); l0=sum(n.*y.*log(pr)+n.*(1-y).*log(1-pr)); betap=beta+aa'*randn(p,1); lp=x*betap+B; pr=exp(lp)./(1+exp(lp)); l1=sum(n.*y.*log(pr)+n.*(1-y).*log(1-pr)); prob=exp(l1-l0); if rand=(a*(v1-log(v1)-1)); rn=rn+v1.*id.*(rn==0); end rn=rn*alpha;