SAEGUS (Simulation and Evolution of Genomes Under Selection) is a Python package which is built around the forward-time population genetics simulator simuPOP. SAEGUS adds functions for modeling quantitative traits, customized breeding schemes and handling data. SAEGUS only supports Python 3. This readme will show you how to install SAEGUS. A user guide is provided separately.
SAEGUS was developed and coded by John J. Dougherty III under the guidance of Dr. Randall J. Wisser. This work was supported by the Agriculture and Food Research Initiative Grant No. 2011-67003-30342 from the USDA-NIFA; the National Science Foundation Grant No. 1144726, Systems Biology of Cells in Engineered Environments IGERT program; and University of Delaware's Center for Bioinformatics and Computational Biology graduate program.
Anaconda is a package manager and a Python distribution which ships with popular Python packages used in scientific computing. The Anaconda distribution must be installed in order to proceed with this readme.
simuPOP can be installed using the conda package manager. Once you have installed Anaconda, open a terminal and run:
$ conda install -c conda-forge simuPOP
Having toruble? See source documentation on installation: simuPOP Installation
h5py is a Python package for hdf5 files. I am unsure if it ships by default with the Anaconda distribution. To be sure, you can run the install command regardless.
$ conda install -c anaconda h5py
Having toruble? See source documentation on installation: h5py Installation
After Anaconda, simuPOP and h5py have been installed, the following steps are used to set up and execute SAEGUS:
- Clone the 'saegus' repository
- Install 'saegus'
- Open a Python terminal, preferrably a Jupyter notebook:
$ jupyter notebook
- Follow the user guide, starting with the creation of a population from raw data
Using HTTPS protocol:
$ git clone https://github.com/maizeatlas/saegus.git
Using SSH protocol
$ git clone git@github.com:maizeatlas/saegus.git
Alternatively if you already have the repository on your machine then use git pull
command to retrieve the most recent version of the repository. Navigate to the location of the repository on your machine and run:
$ git pull
In the saegus
directory navigate to the saegus_project/src/ directory. You should see:
~/saegus/src$ ls
~/saegus/src$ MANIFEST.in . build . data . docs . saegus . setup.py
Run the python setup.py install command to install the saegus package. You should see something like this:
~/saegus/src$ python setup.py install
running install
running build
running build_py
creating build
creating build/lib
...
In your terminal navigate to the $ ~/src/data/
directory. This is where all the example data files are located for the user guide. In your terminal run:
$ jupyter notebook
A window in your browser will open. This is a much nicer environment to work in than a plain Python interpreter. Especially with saegus' long function names.
Open a new tab in your web browser and follow the walk through: saegus walkthrough