- 1 A repo that contains miscellaneous Python/C++ modules/programs, a standalone Python module 'palos' by the yfish group (can be installed by pip).
- 2 Prerequisites to run Python programs in Pymodule
- 3 Example on how to run some pymodule programs
Yu S. Huang, [email protected]
1 A repo that contains miscellaneous Python/C++ modules/programs, a standalone Python module 'palos' by the yfish group (can be installed by pip).
This repository is a mix of a python module 'palos' and other standalone programs developed and used by the yfish group, http://www.yfish.org/.
It contains code related to bioinformatics projects focusing on next-generation sequencing data, population genetics, genome-wide association studies, pedigree genetics, etc.
palos/ contains the source code of the https://pypi.org/project/palos module.
palos/algorithm/ contains pure algorithms, not specific to Bioinformatics.
GADA/ contains a faster algorithm than the original GADA (2008/2009) by using a Red-Black tree. Now in an independent repo https://github.com/polyactis/eGADA.
ngs/ contains programs analyzing next-generation sequencing data.
Most programs in pymodule are dependent on the palos
module, which is in palos/. Installation of palos
will trigger installation of other dependencies.
Palos supports Python3 primarily, but is ported to Python2 via https://github.com/asottile/future-fstrings because some pymodule programs are Python2-only.
Install/Upgrade the Python3 version of Palos
pip3 install --upgrade palos
Install/Upgrade the Python2 version of Palos
# to run some Python2 pymodule programs
pip install --upgrade palos
Package future-fstrings allows the use of f-string in Python2.
# -*- coding: future_fstrings -*-
thing = 'world'
print(f'hello {thing}')
# Build the package.
# sdist and bdist_wheel are both commands of setup.py, not package names.
python3 setup.py sdist bdist_wheel
# (Delete old ones beforehand) and Upload the compiled package file.
# Enter your PyPi username (__token__) and password (!= the pypi.org account password).
twine upload dist/*
The following pakcages are optional, only needed for some functions.
- mysqldb
- biopython
- pegaflow https://pypi.org/project/Pegaflow/
- psycopg2 http://initd.org/psycopg/
- matplotlib basemap toolkit http://matplotlib.sourceforge.net/basemap/doc/html/
- python imaging library http://www.pythonware.com/products/pil/
- python-scientific http://www.scipy.org/
- biopython
- python-rpy2
- networkx https://networkx.lanl.gov/wiki
- hcluster
- python-h5py
- python-tables
Required if you plan to compile all binaries in pymodule by typeing 'make all'.
apt-get install libhdf5-dev libhdf5-serial-dev libhdf5-cpp-100 hdf5-tools
libarmadillo-dev libboost-program-options-dev libboost-iostreams-dev
libboost-python-dev python-dev
./ngs/DownsampleWorkflow.py -h