#####################################################################
#####################################################################
# Summarize ecomem output
#####################################################################
#####################################################################
memsum = function(x,cred.int=0.95,verbose=TRUE,...){
n.chains = length(x$post.samps)
params = names(x$post.samps[[1]])
quantiles = (1-cred.int)/2 + c(0,cred.int)
summ = function(y){
if (is.null(dim(y))){
tab = t(c(mean(y),median(y),quantile(y,quantiles)))
} else {
tab = t(apply(y,2,function(z)c(mean(z),median(z),quantile(z,quantiles))))
}
tab = as.data.frame(tab)
names(tab) =
c("mean","median",paste("q",quantiles[1],sep=""),paste("q",quantiles[2],sep=""))
return(tab)
}
# summarize beta
coef.tab = cbind(data.frame(var=x$pred.vars,
summ(do.call("rbind",
lapply(x$post.samps,
function(y)y$beta)))))
# summarize sig.y
if ("sig.y" %in% params){
coef.tab = rbind(coef.tab,
data.frame(var="sig.y",summ(unlist(lapply(x$post.samps,
function(y)y$sig.y)))))
}
# summarize memory functions
if ("w" %in% params){
for (i in 1:length(x$mem.vars)){
coef.tab =
rbind(coef.tab,data.frame(var=paste(
x$mem.vars[i],":w",1:ncol(x$post.samps[[1]]$w[[i]])-1,
sep=""),summ(
do.call("rbind",lapply(x$post.samps,
function(y)y$w[[i]])))))
}
}
if (verbose == TRUE){
print(coef.tab,digits=3,row.names=FALSE)
}
return(coef.tab)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.