Skip to main content

Metagenomic profiling using a reference phylogeny

Project description

expam logo

Install.

From Bioconda (Recommended)

From PyPI

user@computer:~$ pip install expam

From GitLab source

To install from source, you need a local installation of Python >=3.8, as well as numpy and cython. There are some commonly encountered problems when installing on Linux, the most common of which are outlined in the FAQ section below.

First download the source code from the GitLab repository.

user@computer:~$ git clone git@github.com:seansolari/expam.git

This can then be installed locally by executing the following command from the source code root:

user@computer:~$ python3 setup.py install

Documentation

View our online documentation!

https://expam.readthedocs.io/en/latest/index.html

See the Quick Start Tutorial for a guide to expam's basic usage and download links for pre-built databases.

Quick Start Tutorial


FAQ

Problems during installation

error: g++: Command not found

This is simply a matter of updating the compiler.

> sudo apt-get install build-essential

fatal error: Python.h: No such file or directory

This simply means you need to install/update the Python development files for version 3.

> sudo apt-get install python3-dev

(Reference - SO)


ete3 importing errors

For instance, ImportError: cannot import name 'NodeStyle'.

The ete3 module depends on Qt, and for Linux it may take some tweaking to get Python to recognise the local installation of Qt. The following seems to work for a broad collection of circumstances.

First update the local installation of Qt.

> sudo apt-get install qt5-default

Now double-check which version of Qt has been installed.

> dpkl -l | grep "pyqt5"

Install the corresponding Python interface to Qt.

> pip3 install pyqt5==5.12

OOM Killer

If you run into the unlikely circumstance where the OOM killer has been invoked and the program experiences an ungraceful exit, the operating system may not have cleaned all shared memory resources expam used, leading to potentially problematic memory leaks.

To prevent this occurring, make prudent use of the expam_limit functionality (see documentation), and don't use an extremely high number of processes (particularly for large databases). Within the range of 10-30 processes will likely be suitable for high-memory machines.

If you suspect that OOM killer has been invoked, this can be confirmed using the following command:

dmesg -T | egrep -i 'killed process'

In the event OOM killer has been called, it is prudent to check how much shared memory is currently being used by the system.

df -h /dev/shm

If the amount of shared memory used is higher than you would expect, you can first check if there are any residual resources that need to be cleaned up.

ls -lah /dev/shm

If there are files starting with 'psm' and owned by you, these may be residual files that need to be cleaned up. Contact your systems administrator to remove these files.

It may also be the case that OOM killer has killed some child process, leaving the parent process sleeping (and therefore holding onto resources). You will need your system administrator's assistance to clean this up.

To check for sleeping (expam) processes, run

sudo lsof /dev/shm | grep "expam"

These sleeping processes should then be killed by running

kill -9 <PID>

Confirm that the leaked memory has been freed by running df -h /dev/shm.


Commands

A complete list of available commands can by found by using the -h/--help flags.

user@computer:~$ expam --help
...

Bug Reports

Please raise any bug reports at https://github.com/seansolari/expam/issues accompanied by any error messages, a rough description of the database/setup and parameters used to create the database.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

expam-1.1.0.tar.gz (454.3 kB view details)

Uploaded Source

Built Distribution

expam-1.1.0-cp39-cp39-macosx_12_0_x86_64.whl (321.1 kB view details)

Uploaded CPython 3.9 macOS 12.0+ x86-64

File details

Details for the file expam-1.1.0.tar.gz.

File metadata

  • Download URL: expam-1.1.0.tar.gz
  • Upload date:
  • Size: 454.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.10

File hashes

Hashes for expam-1.1.0.tar.gz
Algorithm Hash digest
SHA256 2658ae8dd89578fd4ee3ce91d300cf541dc3d2355bdcc7d555098163f6afcd54
MD5 e2f1a6cad195e3171575befe90429366
BLAKE2b-256 5e1537198ef7cbfcafeb86d5ac33c8c828479c03e0c48f54df4a9292900af812

See more details on using hashes here.

File details

Details for the file expam-1.1.0-cp39-cp39-macosx_12_0_x86_64.whl.

File metadata

File hashes

Hashes for expam-1.1.0-cp39-cp39-macosx_12_0_x86_64.whl
Algorithm Hash digest
SHA256 24311b8e5a132af289fc7f51a04d8fa608ed180d6ebc0aceb95eb9bc013e029a
MD5 1d6ccc25b72372f3859eba485ebc2d11
BLAKE2b-256 3d9523f210d69ad9233e1a7b4ad78b7b93b82eaaae0cc2d3931ef848d7f1fe40

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page