# Load Size-Scaled Trait and Error Data all.traits<-read.table("Hindlimb Phylogenetic Residuals.txt",sep="\t",header=TRUE,row.names=1) all.errors<-read.table("Hindlimb Phylogenetic Errors.txt",sep="\t",header=TRUE,row.names=1) library(geiger) early.burst<-list() g<-ncol(all.traits) EB.AICc<-c(1:g) Run the Early Burst Model for Each Trait for (i in 1:g) { trait<-all.traits[,i] error<-all.errors[,i] names(trait)<-rownames(all.traits) names(error)<-rownames(all.errors) early.burst[[i]]<-fitContinuous(tree,trait,SE=abs(error),model=c("EB"),bounds=list(a=c(-1,1))) # The Fit for Each Trait Becomes an Element of a List EB.AICc[i]<-early.burst[[i]]$opt$aicc } names(EB.AICc)<-colnames(all.traits)