R/lsd-data-frame.R

## LSD bootstrap solo addition to pick up where it has failed...

## function declaration

LSD_Data_Frame <- function(data,n.bs=100,reps=10,mu=0.0001,R0=2,Tg=2.6,size=c(0,0.1,10),
                     dir="C:/Users/Oliver/Google Drive/Academic Work/Imperial/O15-12/BEAST/Data Collection/VarianceCheck/",
                     dir.names = c("NoVariance","Size0.1","Size10")){
  
  ## EXTRA FUNCTIONS ##
 
  ## HANDLE VARIABLES ##
  ##########################################################
  param.dir <- paste(dir,"mu_",mu,"_R0_",R0,"_Tg_",Tg,"/",sep="")
  rows <- length(size)*reps*n.bs
  res <- as.data.frame(list("Var"=rep(0,rows),"Tree"=rep(0,rows),"Time"=rep(0,rows),"O_TMRCA"=rep(0,rows),"E_mu"=rep(0,rows),"O_mu"=rep(0,rows)))

  ## MAIN LOOP ##
  ##########################################################
  
  
  for (d in 1:length(dir.names)){
    
    main.dir <- paste(param.dir,dir.names[d],"/",sep="")
    if(d==1){
    res$Var[(((d-1)*(reps*n.bs))+1):(((d)*(reps*n.bs)))] <- 0
    } else {
      res$Var[(((d-1)*(reps*n.bs))+1):(((d)*(reps*n.bs)))] <- size[d]  
    }
    for (r in 1:reps){
      
      rep.dir <- paste(main.dir,rep.name,r,"/",sep="")
       
      ## collect tree
      load(paste(rep.dir,"casetree.RData",sep=""))

          res$O_TMRCA[((((d-1)*(reps*n.bs))+((r-1)*n.bs)):((d-1)*(reps*n.bs)+((r)*n.bs)))] <- data[[d]][,r] 
          res$O_mu[((((d-1)*(reps*n.bs))+((r-1)*n.bs)):((d-1)*(reps*n.bs)+((r)*n.bs)))] <- data[[d+length(dir.names)]][,r] 
          res$Tree[((((d-1)*(reps*n.bs))+((r-1)*n.bs)):((d-1)*(reps*n.bs)+((r)*n.bs)))] <- r
          res$Time[((((d-1)*(reps*n.bs))+((r-1)*n.bs)):((d-1)*(reps*n.bs)+((r)*n.bs)))] <- max(case.tree$Time)
          res$E_mu[((((d-1)*(reps*n.bs))+((r-1)*n.bs)):((d-1)*(reps*n.bs)+((r)*n.bs)))] <- mu
          
          
        }
      }

  return(res)
}
OJWatson/sims4 documentation built on May 7, 2019, 8:33 p.m.