Comments (8)
FWIW I believe the only route available at the moment is with the tree distribution. This typically involves bootstrap trees, because if you were doing Bayesian analyses you would be using BEAST in the first place!
from treepl.
Thanks! I figured that was the option.
I suppose I will loop it over the distributions of BS trees then. I guess I could get a Pp distribution on a fixed topology If had to (though for 732 taxa and over 400 loci is not optimal for something like that).
from treepl.
The tricky bit is to make sure that your constraints (i.e. MRCA statements) are placed consistently on the various trees (I'm sure you know this). In the past I had R code to analyze individual trees and write out individual treePL config files. This would, for example, get rid of redundant constraints. Not too difficult to do, but I can (try to!) find the code and put it in the repo if that would be useful.
from treepl.
That is for sure an issue.
However, the problem is that with a genomic dataset of this size, I am simply optimizing all of the genome data on the fixed species trees to generate branch lengths in terms of substitution probabilities. I can "easily" generate a distribution of substitution rates on this single species tree, but can't really do anything resembling relaxed phylogenetics. Perhaps this is tense phylogenetics?
from treepl.
Indeed: the past sure is tense.
Good that you don't have to worry about phylo conflict; will things much easier. Good luck!
from treepl.
Just a follow up. Say you have your bootstrapped trees (conforming to some species tree) in a folder that also includes your control file (control), the treePL executable, and this loop (treepl_loop.R) then just use this R script to run everything (provided that lambda is the same for each replicate):
x<-list.files()
x<-x[-grep("control",x)]
x<-x[-grep("treePL",x)]
x<-x[-grep("treepl_loop.R",x)]
for(i in 1:length(x)){
y<-readLines("control.txt")
y[1]<-paste("treefile =",x[i])
y[15]<-paste("outfile = outPL_",x[i],sep="")
write(y,"control.txt")
system("treePL control.txt",ignore.stdout = T)
print(i)
}
Co-authored with Marcelo Gehara
from treepl.
@burbrink That could be useful for running the analyses in parallel (but would require altering your R code from a for loop; not too difficult), but treePL handles multiple trees natively. So you could just do:
cat *.tre > all.trees # if the trees are in different files
treePL control_file # where control_file obviously mentions 'all.trees'
from treepl.
Good point, I could have just done that with an apply fxn and put in parallel. But this is running lightning fast already (with 8 threads).
I had no idea treePL handled these natively. Reinventing the wheel.
Well kids, that is a good loop for controlling stuff from R anyhow...
from treepl.
Related Issues (20)
- Tree is invalid: missing concluding semicolon HOT 7
- segmentation fault HOT 2
- What exactly does "linear search failed" mean in terms of tree quality? HOT 4
- Unstable smooth values
- CV hanging HOT 1
- Writing a for loop for treepl? HOT 2
- Confidence Intervals: Bayesian vs ML
- treepl: command not found HOT 1
- Problem with mrca and tiny branch length at internal node. HOT 1
- Treepl+RaxML replicate trees HOT 1
- Installation problem
- treePL not following age calibrations HOT 4
- R script to check consistency of calibrations for 100 large trees (~3,000 taxa)? HOT 22
- Is there a license? HOT 1
- How to call treePL ?? HOT 11
- Segmentation fault (core dumped) when using prime
- Failed setting feasible start rates/dates after 10 attempts. Aborting. HOT 8
- The root time is biased towards the maximum time of the fossil which calibrated to the root. HOT 3
- Large variation among different replicates but with same parameters
- Installation issues HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from treepl.