Starting with PanACoTA

PanACoTA is a Python package, developed in Python 3.6.

Installation

Dependencies

PanACoTA is written in python3. So, you need python3 (and pip3 for installation) to run it.

Then, PanACoTA has several external dependencies. If you use Singularity installation (for ex. to run on a cluster), you do not need to install any dependency. Otherwise, install only the one(s) you need, according to the module(s) you want to use:

  • For prepare module: mash (to filter genomes)

  • For annotate module: prokka and/or prodigal (to uniformly annotate your genomes)

  • For pangenome module: mmseqs (to generate pangenomes)

  • For align module: mafft (to align persistent genome)

  • For tree module: At least one of those softwares:

To be able to install the dependencies, make sure you already have:

  • tar

  • git

  • wget

  • bioperl, java and some other base packages required for prokka: see Prokka README for more information.

For FastTree, we advise to download C code from here, and compile it using:

gcc -DOPENMP -fopenmp -DUSE_DOUBLE -Wall -O3 -finline-functions -funroll-loops -o FastTreeMP -lm FastTree.c

You can then add the output FastTreeMP to your $PATH to be able to run it from everywhere.

Installation and update:

You have different possibilities to install PanACoTa.

Warning

If you plan to work on the scripts, choose the development installation (see Developer documentation).

From pip

pip

A very simple way to install the last stable version. This will install files in your python site-packages folder.

pip install panacota

And to get new version

pip install panacota --upgrade

If you have permission issues, you can either use ‘sudo’ before the previous command lines to install it as root, or add the --user option to install it locally.

From Github repository

This allows you to get the very last version, and be able to test the last enhancements before they are uploaded to the other platforms (pip, conda, singularity…). For that, go to where you want to install it (<your_dir>), and type:

git clone https://github.com/gem-pasteur/PanACoTA.git

This will create a repository called PanACoTA, containing the content of this Github repository. To install PanACoTA, and be able to launch it from anywhere:

cd PanACoTA
./make

If you have permission issues, you can either use ‘sudo’ before the previous command lines to install it as root, or add the --user option to install it locally.

To upload to new version, go back to your repository:

cd <your_dir>/PanACoTA
git pull
./make upgrade

From singularity image

Very useful if you do not have permission rights on the computer, such as, for example, on a cluster. The other advantage is that you do not need to install any dependence (except singularity itself of course). Singularity image includes all of them. You just have to download 1 file, and nothing will be installed anywhere on your computer.

First, download the singularity image:

singularity pull --name panacota.img shub://gem-pasteur/PanACoTA[:<version>]

If you want a specific version, like version 1.0, specify shub://gem-pasteur/PanACoTA:1.0.

To get latest version:

singularity pull --name panacota.img shub://gem-pasteur/PanACoTA

(This is the same as singularity pull --name panacota.img shub://gem-pasteur/PanACoTA:latest)

It will replace your file panacota.img by a new one corresponding to the latest version.

From conda

Be careful while using conda, especially if you are not familiar with it. We advise to install PanACoTA in a dedicated conda environment, in order to avoid unwanted interactions with other softwares (like needed versions of dependencies automatically installed by conda). To install the package, use conda install -c bioconda panacota. But, as described in conda documentation, we advise to install it with:

# Create an environment: This creates the 'myenv' environment in '/envs/'. No packages will be installed in this environment.
conda create --name myenv
# Activate the environment
conda activate myenv
# Install PanACoTA
conda install -c bioconda panacota
# When you have finished using PanACoTA, deactivate environment
conda deactivate

From zip version

zip

For people wanting to download source code of a specific version, we provide releases. You can download last one here:

Uninstalling PanACoTA

If you don’t want PanACoTA anymore uninstall it by typing:

pip uninstall panacota   # If you installed from pip
./make uninstall         # If you installed from github repository

Or, if you used singularity, just remove the downloaded image: rm -r panacota.img.

Quick run

PanACoTA contains 6 different subcommands:

  • prepare (download assemblies from refseq if you want to, or give your input database, to run a filtering quality control). To help you find NCBI species taxid you need, you can use their taxonomy browser

  • annotate (annotate all genomes of the dataset, after a quality control)

  • pangenome (generate pan-genome)

  • corepers (generate core-genome or persistent-genome)

  • align (align core/persistent families)

  • tree (infer phylogenetic tree from persistent genome)

You can run them by typing:

PanACoTA <subcommand_name> <arguments_for_subcommand>

Each subcommand has its own options and inputs. To get the list of required arguments and other available options for the subcommand you want to run, type:

PanACoTA <subcommand> -h

When using singularity, just replace PanACoTA by ./panacota.img:

./panacota.img <subcommand_name> <arguments_for_subcommand>
./panacota.img -h

It also provides a subcommand PanACoTA all to run all modules in a row.