khabbazian / l1ou

Detection of evolutionary shifts in Ornstein-Uhlenbeck models
GNU General Public License v2.0
19 stars 7 forks source link
evolutionary-shift ornstein-uhlenbeck phylogeny study-trait-evolution

Tools for detecting past changes in the expected mean trait values and studying trait evolution from comparative data

The l1ou package provides functions to study trait evolution from comparative data and detect past changes in the expected mean trait values, as well as convergent evolution. It uses the Ornstein-Uhlenbeck process along a phylogenetic tree, which can model a changing adaptive landscape over time and over lineages.

Shifts can be detected from multiple traits, assuming that all traits shifted along the same lineages. Estimation is very fast thanks to lasso techniques, and the user can choose from multiple information criteria for model selection, including a phylognetic BIC. Citation:

l1ou Reference manual

Install using the devtools package

From within R:

install.packages("devtools")
library(devtools)
install_github("glmgen/genlasso")
install_github("khabbazian/l1ou")

Windows users will first need to install Rtools.

Install without the devtools package

To resolve dependencies, first install the following packages from CRAN, then the knitr package. From within R:

install.packages(c("igraph", "phylolm", "lars", "grplasso", "magic", "Rcpp"))
install.packages("knitr")

Download genlasso version 1.3 R package from CRAN archive (link). From within R:

 install.packages("genlasso_1.3.tar.gz", repos=NULL, type="source")

Now in the shell, with asterisks to be replaced with the correct version number:

git clone https://github.com/khabbazian/l1ou.git 
R CMD build l1ou 
R -e 'install.packages("l1ou_*.**.tar.gz")'

Version notes

major changes are indicated below.