Skip to content
Gal Horesh edited this page Nov 1, 2019 · 23 revisions

SLING

SLING identifies operons by searching for a single gene essential to the operon function, along with its neighbours in a rule-defined proximity. Examining this subset of genes enables us to understand the basic diversity of the operons in a large dataset.

The input are the assembled genomes in FASTA format, and optionally, a GFF file containing the genome annotation to increase sensitivity, a set of HMM profiles for the conserved gene being searched for and a list of structural parameters.

To cite:

Horesh G, Harms A, Fino C, Parts L, Gerdes K, Heinz E, et al. SLING: a tool to search for linked genes in bacterial datasets. Nucleic Acids Res. 2018; doi:10.1093/nar/gky738

Installation

sling has the following dependencies which need to be installed:

Installation using pip:

pip2.7 install git+https://github.com/ghoresh11/sling.git

Installation by cloning git repository:

Download the latest release from the github:

git clone https://github.com/ghoresh11/sling.git

cd into the repository:

cd sling

run installation:

python setup.py install

Usage

Quick start

Please refer to the Quick Start to use sling.

Running sling

run:

Please refer to the run manual page for full details on running sling in a single command.

Step by step:

For more details on running sling step by step manually, refer to the following:

  1. prepare: process FASTA files (and optional GFF files) for search.
  2. scan: Scan ORFs for HMM profiles using HMMER.
  3. filter: filter the scan results and annotate each strain.
  4. group: use sequence similarity networks to group the results.

Important: There are situations in which running the steps separately is useful. The scanning step is time consuming, therefore, if you wish to test different requirements for the filtering and grouping, simply run the filter and group steps with different parameters (rather than rerunning the whole pipeline).

Contribute HMM collection and structural requirements

If you have constructed your own HMM library and structural requirements you can add your collection as a built-in collection into SLING and contribute to the git repository:

sling create_db <name> <hmm_file> --sling_dir <sling_dir> <options: structural_requirements>

<collection_name>: Custom name for this collection

<hmm_db> : File of HMM profiles. The HMM file should be in standard HMMER3 format, as described in the HMMER User Guide

<sling_dir>: Path to the local SLING git repository

<structural requirements>: List of specific structural requirements for this collection. If not given, default flexible requirements are used. For requirement refer to structural requirements.

After running this command, the new collection will be installed locally and can be uploaded to the git repository. For full details please refer to create_db.

References

HMMER: Eddy SR. Accelerated Profile HMM Searches. Pearson WR, editor. PLoS Comput Biol. 2011;7: e1002195.

BLAST+: Altschul SF, Gish W, Miller W, Myers EW, Lipman DJ. Basic local alignment search tool. J Mol Biol. 1990;215: 403–410.

ITOL: Letunic I, Bork P. Interactive tree of life (iTOL) v3: an online tool for the display and annotation of phylogenetic and other trees. Nucleic Acids Res. 2016;44: W242–5.