## example 1
mydat<-ex0.dag.data[,c("b1","b2","g1","g2","b3","g3")];## take a subset of cols
## setup distribution list for each node
mydists<-list(b1="binomial",
b2="binomial",
g1="gaussian",
g2="gaussian",
b3="binomial",
g3="gaussian"
);
ban<-matrix(rep(0,dim(mydat)[2]^2),ncol=dim(mydat)[2]);# ban nothing
colnames(ban)<-rownames(ban)<-names(mydat); #names must be set
ban["b1","b2"]<-1; # now ban arc from b2 to b1
retain<-matrix(rep(0,dim(mydat)[2]^2),ncol=dim(mydat)[2]);# retain nothing
colnames(retain)<-rownames(retain)<-names(mydat); #names must be set
retain["g1","g3"]<-1; # always retain arc from g3 to g1
# parent limits
max.par<-list("b1"=4,"b2"=4,"g1"=4,"g2"=0,"b3"=4,"g3"=4);
## now build cache of scores (goodness of fits for each node)
res.c<-buildscorecache.inla(data.df=mydat,data.dists=mydists,
dag.banned=ban, dag.retained=retain,max.parents=max.par,
verbose=FALSE,centre=TRUE);
################################################################################################
## Example 2 glmm
################################################################################################
mydat<-ex3.dag.data;## this data comes with abn see ?ex3.dag.data
mydists<-list(b1="binomial",
b2="binomial",
b3="binomial",
b4="binomial",
b5="binomial",
b6="binomial",
b7="binomial",
b8="binomial",
b9="binomial",
b10="binomial",
b11="binomial",
b12="binomial",
b13="binomial"
);
max.par<-2;
mycache.inla<-buildscorecache.inla(data.df=mydat,data.dists=mydists,group.var="group",
cor.vars=c("b1","b2","b3","b4","b5","b6","b7","b8","b9","b10","b11","b12","b13"),
max.parents=max.par, which.nodes=c(1),
verbose=FALSE,centre=TRUE);Run the code above in your browser using DataLab