GuessPause <- function(mat,mindur=300,r=75){ cat("Inferring pauses...\n") flatmat=c() collapse=FALSE inds=1 incr=1 tcur=mat[inds,4] while(TRUE){ if(!is.na(mat[inds+incr,7])){ tnex=mat[inds+incr,7] }else{ tnex=mat[inds+incr,4] } if(tnex-tcur>=mindur){ if(mat[inds+incr,1]==1){ maxr=MaxRadius(rbind(mat[inds:(inds+incr),2:3],mat[inds:(inds+incr),5:6])) }else{ maxr=MaxRadius(mat[inds:(inds+incr),2:3]) } if(maxr>r && !collapse){ inds=inds+1 tcur=mat[inds,1] incr=0 } if(maxr>r && collapse){ if(mat[inds+incr-1,1]==4){ if(indsnrow(mat)){ if(maxr<=r && tnex-tcur>=mindur){ flatmat=rbind(flatmat,c(inds,inds+incr-1)) } break } } if(nrow(flatmat)==0){ return(mat) }else{ outmat=c() if(flatmat[1,1]>1){ outmat=mat[1:(flatmat[1,1]-1),] } for(i in 1:nrow(flatmat)){ #ProgressBar(nrow(flatmat),i) outmat=rbind(outmat,Collapse2Pause(mat[flatmat[i,1]:flatmat[i,2],])) if(i1){ outmat2=outmat[1:(flatmat2[1,1]-1),] } for(i in 1:nrow(flatmat2)){ outmat2=rbind(outmat2,Collapse2Pause(outmat[flatmat2[i,1]:flatmat2[i,2],])) if(i