Getting Started

Download & Installation

Installation for both the Python and R packages is performed in the usual manner.

To install pRESTO and Change-O from PyPI:

> pip3 install presto changeo --user

To install Alakazam, SHazaM, TIgGER, SCOPer and dowser from CRAN:

> R
> install.packages(c("alakazam", "shazam", "tigger", "scoper", "dowser"))

Alternatively, a complete installation of the Immcantation framework and its dependencies is available as a Docker container. Installation of the container is described in Docker Container Installation and Overview and basic usage is described in Using the Container.

Overview of B Cell Repertoire Analysis

Yaari and Kleinstein. Practical guidelines for B-cell receptor repertoire sequencing analysis. Genome Medicine. 7, 121 (2015). doi:10.1186/s13073-015-0243-2

Immcantation Tutorials

Each tool in the framework has its own documentation site, with detailed usage information and examples. A good starting point to familiarize yourself with the framework is to follow one the tutorials listed here. They are available as Jupyter notebooks under the folder training in the Immcantation Bitbucket repository.

Introductory Webinar

Start here: Introductory Webinar and Jupyter Notebook

For a detailed use example for each Immcantation tool follow the tutorial Introduction to B cell repertoire analysis using the Immcantation framework. This tutorial is based on our introductory webinar. It is also available as a Jupyter notebook (intro-lab.ipynb) in the Immcantation repository.

Tutorial

Introduction to B cell repertoire analysis using the Immcantation framework covers:

  • V(D)J gene annotation and novel polymorphism detection

  • Inference of B cell clonal relationships

  • Diversity analysis

  • Mutational load profiling

  • Modeling of somatic hypermutation (SHM) targeting

  • Quantification of selection pressure

Single-cell Analysis

10x Genomics V(D)J Sequence Analysis with Immcantation Tutorial

For information on how to process 10x Genomics VDJ data to be analyzed with Immcantation, we offer the introductory tutorial 10x Genomics V(D)J Sequence Analysis with Immcantation. It is available as a Jupyter notebook (10x_tutorial.ipynb) in the Immcantation repository.

Tutorial

10x Genomics V(D)J Sequence Analysis with Immcantation covers:

  • V(D)J gene annotation

  • Inference of clonal relationships

  • Lineage tree reconstruction

  • Incorporation of Cell Ranger annotations

Integration of BCR and GEX data

In Integration of BCR and GEX data we demonstrate an enhanced analysis by integrating 10x BCR and 10x GEX data. The jupyter notebook (BCR_Seurat_tutorial.ipynb) is available in the Immcantation repository.

Tutorial

Integration of BCR and GEX data covers:

  • Integration of BCR data with the GEX Seurat object

  • Highlight BCR cells in the GEX UMAP

  • Integration of GEX cell annotations in the BCR data

  • Identify GEX clusters in the BCR UMAP

  • Highlight other BCR features in UMAPs

Lineage tree reconstruction

Reconstruction and analysis of B-cell lineage trees from single cell data using Immcantation

The tutorial Reconstruction and analysis of B-cell lineage trees from single cell data using Immcantation is available as a Jupyter notebook (dowser_tutorial.ipynb) in the Immcantation repository.

Tutorial

Beginning with processed single cell RNA-seq (scRNA-seq) + BCR data from 10X Genomics, with Reconstruction and analysis of B-cell lineage trees from single cell you will learn:

  • how cell type annotations can be associated with BCR sequences,

  • how clonal clusters can be identified, and

  • how B cell phylogenetic trees can be built and visualized using these data sources.

Video presentations

Link to Immcantation's YouTube Channel

You can watch presentations by Immcantation developers and users in Immcantation’s YouTube channel.

Vignettes

Detailed usage documentation and tutorials for each individual tool in Immcantation are provided in the main documentation pages for each tool. The following list of shortcuts cover common analyses. Note, each link will leave the Immcantation portal page.

Data Standards

Immcantation supports both the original Change-O standard and the new Adaptive Immune Receptor Repertoire (AIRR) standard developed by the AIRR Community (AIRR-C). Both standards use tab-delimited file formats with sets of specific predefined column names.

Change-O Standard

The Change-O format is the original data format developed to enable the integration of multiple tools in the Immcantation framework. It is described in detail (along with the corresponding AIRR-C Standard equivalents) in the Change-O package documentation.

Gupta NT*, Vander Heiden JA*, Uduman M, Gadala-Maria D, Yaari G, Kleinstein SH. Change-O: a toolkit for analyzing large-scale B cell immunoglobulin repertoire sequencing data. Bioinformatics 2015; doi: 10.1093/bioinformatics/btv359

AIRR Community Standard

The default file format for all functions in Immcantation is the AIRR-C format as of release 4.0.0. To learn more about this format (including the valid field names and their expected values), visit the AIRR-C Rearrangement Schema documentation. The Change-O package documentation contains a table with mappings between both standards. Some of the most frequently used translations are:

AIRR

Change-O

sequence_id

SEQUENCE_ID

sequence

SEQUENCE_INPUT

sequence_alignment

SEQUENCE_IMGT

productive

FUNCTIONAL

v_call

V_CALL

d_call

D_CALL

j_call

J_CALL

junction_length

JUNCTION_LENGTH

junction

JUNCTION

germline_alignment

GERMLINE_IMGT

clone_id

CLONE

Vander Heiden et al AIRR Community Standardized Representations for Annotated Immune Repertoires. Frontiers in Immunology. 9, 2206 (2018). doi:10.3389/fimmu.2018.02206

Potential Workflow Changes

Release 4.0.0 introduces two main changes that can potentially break existing Immcantation workflows. In this section, we explain these changes, give solutions and provide an example to show how to update workflows in order to properly work with release 4.0.0.

The first change is the adoption of the AIRR Standard as the default format expected by the tools (note that Change-O is still available as an option). The default values in all functions and pipelines have been adjusted to use this standard. Users upgrading to 4.0.0 may find that workflows that relied upon default values now fail. The solution is to review the workflow and specify the correct values for the data format being used.

The second change that can break workflows is that all outputs now use lowercase column names for style consistency with the AIRR Standard format. This means that user workflows that expect columns to be in uppercase will now break. The solution is to update the code to use the current lowercase values.

The following R-based example demonstrates how to fix broken workflows as a result of these two changes:

> library(alakazam)
> library(shazam)

# alakazam provides an example dataset in Change-O format
> db <- ExampleDbChangeo

# Inspect the column names
> colnames(db)
[1] "SEQUENCE_ID"          "SEQUENCE_IMGT"        "GERMLINE_IMGT_D_MASK"
[4] "V_CALL"               "V_CALL_GENOTYPED"     "D_CALL"
[7] "J_CALL"               "JUNCTION"             "JUNCTION_LENGTH"
[10] "NP1_LENGTH"           "NP2_LENGTH"           "SAMPLE"
[13] "ISOTYPE"              "DUPCOUNT"             "CLONE"

# CHANGE 1: default values follow the AIRR Standard specification
> db <- distToNearest(db)
Error in distToNearest(db) : The column junction was not found

# As of release 4.0.0, the `distToNearest` command above doesn't work if the input data
# is in Change-O format because the default values are now AIRR Standard values:
#    sequenceColumn="junction"
#    vCallColumn="v_call"
#    jCallColumn="j_call"
# These values don't match the column names in `db` as previously seen, so the command doesn't work

# The solution is to specify the actual column names:
> db <- distToNearest(db, sequenceColumn="JUNCTION",
                        vCallColumn="V_CALL",
                        jCallColumn="J_CALL")
> colnames(db)
[1] "SEQUENCE_ID"          "SEQUENCE_IMGT"        "GERMLINE_IMGT_D_MASK"
[4] "V_CALL"               "V_CALL_GENOTYPED"     "D_CALL"
[7] "J_CALL"               "JUNCTION"             "JUNCTION_LENGTH"
[10] "NP1_LENGTH"           "NP2_LENGTH"           "SAMPLE"
[13] "ISOTYPE"              "DUPCOUNT"             "CLONE"
[16] "dist_nearest"

# CHANGE 2: outputs are generated using lower case
> threshold <- findThreshold(db$DIST_NEAREST)
Error in h.ucv.default(unique(distances), 4) :
  argument 'x' must be numeric and need at least 3 data points
In addition: Warning message:
Unknown or uninitialized column: 'DIST_NEAREST'.

# In previous releases, `distToNearest` added the column `DIST_NEAREST` to `db`.
# As of release 4.0.0, it adds `dist_nearest`, so the command above
# doesn't work, because `db` doesn't have a column named `DIST_NEAREST`

# The solution is to update the function call to use the correct name:
> threshold <- findThreshold(db$dist_nearest)

Convert between Change-O and AIRR-C format

The default file format is the AIRR-C format. However, Immcantation provides a script ConvertDb in Change-O package to convert the file from AIRR-C format to the legacy Change-O standard. For example, to convert a file named sample1_airr.tsv in AIRR-C format to Change-O format, you can run:

> ConvertDb changeo -d sample1_airr.tsv -o sample1_changeo.tab

The output file sample1_changeo.tab is in Change-O format.

In a similar way, you can also use ConvertDb to convert a Change-O file to an AIRR-C file:

> ConvertDb airr -d sample1_changeo.tab -o sample1_airr.tsv

Contact & Cite

Contact Information

If you have questions, you can email the Immcantation Group.

For additional computational immunology software from the Kleinstein Lab, see our website.

Authors

Jason A. Vander Heiden, Namita T. Gupta, Mohamed Uduman, Daniel Gadala-Maria, Susanna Marquez, Julian Zhou, Ruoyi Jiang, Ang Cui, Nima Nouri, Kenneth Hoehn, Edel Aron, Hailong Meng, Chris R. Bolen, Gur Yaari, Steven H. Kleinstein

How to Cite

To cite the pRESTO software package in publications, please use:

Vander Heiden JA*, Yaari G*, Uduman M, Stern JNH, O’Connor KC, Hafler DA, Vigneault F, Kleinstein SH. pRESTO: a toolkit for processing high-throughput sequencing raw reads of lymphocyte receptor repertoires. Bioinformatics 30, 1930-2 (2014). doi:10.1093/bioinformatics/btu138

To cite the Change-O, Alakazam, SHazaM and TIgGER software package in publications, please use:

Gupta NT*, Vander Heiden JA*, Uduman M, Gadala-Maria D, Yaari G, Kleinstein SH. Change-O: a toolkit for analyzing large-scale B cell immunoglobulin repertoire sequencing data. Bioinformatics 31, 3356-8 (2015). doi:10.1093/bioinformatics/btv359

Additional citations for specific methods within Alakazam, SHazaM and TIgGER may be determined using the citation() function within R.

Contributing

We welcome contributions to all components of the Immcantation framework through pull requests to the relevant Bitbucket repository:

All Immcantation core software packages are under the free and open-source license AGPL-3. Other core elements, including, but not limited to, documentation and tutorials, are under CC BY-SA 4.0. Contributed packages are subject to their licenses.

For details on documentation, coding style, and other conventions see the CONTRIBUTING.md file on Bitbucket.

Docker Container Installation and Overview

We have provided a complete installation of the Immcantation framework, its dependencies, accessory scripts, and IgBLAST in a Docker image. The image also includes both the IgBLAST and IMGT reference germline sets, as well as several template pipeline scripts. The image is available on Docker Hub at:

immcantation/suite

Images are versioned through tags with images containing official releases denoted by meta-version numbers (x.y.z). The devel tag denotes the latest development (unstabled) builds.

Getting the Container

Requires an installation of Docker 1.9+ or Singularity 2.3+.

Docker

# Pull release version 4.4.0
docker pull immcantation/suite:4.4.0

# Pull the latest development build
docker pull immcantation/suite:devel

Our containers are Linux-based, so if you are using a Windows computer, please make sure that you are using Linux containers and not Windows containers (this can be changed in Docker Desktop and won’t affect your existing containers).

Singularity

# Pull release version 4.4.0
IMAGE="immcantation_suite-4.4.0.sif"
singularity build $IMAGE docker://immcantation/suite:4.4.0

The instructions to use containers from Docker Hub with Singularity can be slightly different for different versions of Singularity. If the command shown above doesn’t work for you, please visit Singularity Documentation and look for the specific command for your Singularity version under Build a container.

What’s in the Container

Accessory Scripts

The following accessory scripts are found in /usr/local/bin:

fastq2fasta.py

Simple FASTQ to FASTA conversion.

fetch_phix.sh

Downloads the PhiX174 reference genome.

fetch_igblastdb.sh

Downloads the IgBLAST reference database.

fetch_imgtdb.sh

Downloads the IMGT reference database.

imgt2igblast.sh

Imports the IMGT reference database into IgBLAST.

imgt2cellranger.py

Converts the IMGT fasta germline reference files to the input required by cellranger-mkvdjref.

Data

/usr/local/share/germlines/imgt/IMGT.yaml

Information about the downloaded IMGT reference sequences.

/usr/local/share/germlines/imgt/<species>/vdj

Directory containing IMGT-gapped V(D)J reference sequences in FASTA format.

/usr/local/share/igblast

IgBLAST data directory.

/usr/local/share/igblast/fasta

Directory containing ungapped IMGT references sequences with IGH/IGL/IGL and TRA/TRB/TRG/TRD combined into single FASTA files, respectively.

/usr/local/share/protocols

Directory containing primer, template switch and internal constant region sequences for various experimental protocols in FASTA format.

Using the Container

Invoking a shell inside the container

To invoke a shell session inside the container:

# Docker command
docker run -it immcantation/suite:4.4.0 bash

# Singularity command
singularity shell immcantation_suite-4.4.0.sif

Sharing files with the container

Sharing files between the host operating system and the container requires you to bind a directory on the host to one of the container’s mount points using the -v argument for docker or the -B argument for singularity. There are four available mount points defined in the container:

/data
/scratch
/software
/oasis

For example, to invoke a shell session inside the container with $HOME/project mounted to /data:

# Docker command
docker run -it -v $HOME/project:/data:z immcantation/suite:4.4.0 bash

# Singularity command
singularity shell -B $HOME/project:/data immcantation_suite-4.4.0.sif

Note, the :z in the -v argument of the docker command is essential.

Executing a specific command

After invoking an interactive session inside the container, commands can be executed in the container shell as they would be executed in the host shell.

Alternatively, it is possible to execute a specific command directly inside the container without starting an interactive session. The next example demonstrates how to execute ls within $HOME/project mounted to /data:

# Docker command
docker run -v $HOME/project:/data:z immcantation/suite:4.4.0 ls /data

# Singularity command
singularity exec -B $HOME/project:/data immcantation_suite_|docker-version|.sif ls /data

Inspecting the container components

The container includes three informational scripts that provide details about the versions of installed software and available pipelines.

  • The versions report command will inspect the installed software versions and print them to standard output.

  • The analagous builds report command will display the build date and changesets used during the image build. This is particularly relevant if you are using the immcantation/suite:devel development builds.

  • Finally, the pipelines report command will display a list of available template pipelines included in the container.

Each command can be run using:

# Docker command
docker run immcantation/suite:4.4.0 [command]

# Singularity command
singularity exec immcantation_suite_|docker-version|.sif [command]

Pipeline Templates

You can always run your own pipeline scripts through the container, but the container also includes a set of predefined pipeline scripts that can be run as is or extended to your needs. Each pipeline script has a -h argument which will explain its use. The available pipelines are:

  • preprocess-phix

  • presto-abseq

  • presto-clontech

  • presto-clontech-umi

  • changeo-10x

  • changeo-igblast

  • tigger-genotype

  • shazam-threshold

  • changeo-clone

All template pipeline scripts can be found in /usr/local/bin.

PhiX cleaning pipeline

Removes reads from a sequence file that align against the PhiX174 reference genome.

Usage: preprocess-phix [OPTIONS]
-s

FASTQ sequence file.

-r

Directory containing phiX174 reference db. Defaults to /usr/local/share/phix.

-n

Sample identifier which will be used as the output file prefix. Defaults to a truncated version of the input filename.

-o

Output directory. Will be created if it does not exist. Defaults to a directory matching the sample identifier in the current working directory.

-p

Number of subprocesses for multiprocessing tools. Defaults to the available cores.

-h

This message.

Example: preprocess-phix

# Arguments
DATA_DIR=~/project
READS=/data/raw/sample.fastq
OUT_DIR=/data/presto/sample
NPROC=4

# Run pipeline in docker image
docker run -v $DATA_DIR:/data:z immcantation/suite:4.4.0 \
    preprocess-phix -s $READS -o $OUT_DIR -p $NPROC

# Singularity command
singularity exec -B $DATA_DIR:/data immcantation_suite-4.4.0.sif \
    preprocess-phix -s $READS -o $OUT_DIR -p $NPROC

Note

The PhiX cleaning pipeline will convert the sequence headers to the pRESTO format. Thus, if the nophix output file is provided as input to the presto-abseq pipeline script you must pass the argument -x presto to presto-abseq, which will tell the script that the input headers are in pRESTO format (rather than the Illumina format).

NEBNext / AbSeq immune sequencing kit preprocessing pipeline

A start to finish pRESTO processing script for NEBNext / AbSeq immune sequencing data. An example for human BCR processing is shown below. Primer sequences are available from the Immcantation repository under protocols/AbSeq or inside the container under /usr/local/share/protocols/AbSeq. Mouse primers are not supplied. TCR V gene references can be specified with the flag -r /usr/local/share/igblast/fasta/imgt_human_tr_v.fasta.

Usage: presto-abseq [OPTIONS]
-1

Read 1 FASTQ sequence file. Sequence beginning with the C-region or J-segment).

-2

Read 2 FASTQ sequence file. Sequence beginning with the leader or V-segment).

-j

Read 1 FASTA primer sequences. Defaults to /usr/local/share/protocols/AbSeq/AbSeq_R1_Human_IG_Primers.fasta.

-v

Read 2 FASTA primer or template switch sequences. Defaults to /usr/local/share/protocols/AbSeq/AbSeq_R2_TS.fasta.

-c

C-region FASTA sequences for the C-region internal to the primer. If unspecified internal C-region alignment is not performed.

-r

V-segment reference file. Defaults to /usr/local/share/igblast/fasta/imgt_human_ig_v.fasta.

-y

YAML file providing description fields for report generation.

-n

Sample identifier which will be used as the output file prefix. Defaults to a truncated version of the read 1 filename.

-o

Output directory. Will be created if it does not exist. Defaults to a directory matching the sample identifier in the current working directory.

-x

The mate-pair coordinate format of the raw data. Defaults to illumina.

-p

Number of subprocesses for multiprocessing tools. Defaults to the available cores.

-h

This message.

One of the requirements for generating the report at the end of the pRESTO pipeline is a YAML file containing information about the data and processing. Valid fields are shown in the example sample.yaml below, although no fields are strictly required:

sample.yaml

title: "pRESTO Report: CD27+ B cells from subject HD1"
author: "Your Name"
version: "0.5.4"
description: "Memory B cells (CD27+)."
sample: "HD1"
run: "ABC123"
date: "Today"

Example: presto-abseq

# Arguments
DATA_DIR=~/project
READS_R1=/data/raw/sample_R1.fastq
READS_R2=/data/raw/sample_R2.fastq
YAML=/data/sample.yaml
SAMPLE_NAME=sample
OUT_DIR=/data/presto/sample
NPROC=4

# Docker command
docker run -v $DATA_DIR:/data:z immcantation/suite:4.4.0 \
    presto-abseq -1 $READS_R1 -2 $READS_R2 -y $YAML \
    -n $SAMPLE_NAME -o $OUT_DIR -p $NPROC

# Singularity command
singularity exec -B $DATA_DIR:/data immcantation_suite-4.4.0.sif \
    presto-abseq -1 $READS_R1 -2 $READS_R2 -y $YAML \
    -n $SAMPLE_NAME -o $OUT_DIR -p $NPROC

Takara Bio / Clontech SMARTer v1 immune sequencing kit preprocessing pipeline

A start to finish pRESTO processing script for Takara Bio / Clontech SMARTer v1 immune sequencing kit data. C-regions are assigned using the universal C-region primer sequences are available from the Immcantation repository under protocols/Universal or inside the container under /usr/local/share/protocols/Universal.

Usage: presto-clontech [OPTIONS]
-1

Read 1 FASTQ sequence file. Sequence beginning with the C-region.

-2

Read 2 FASTQ sequence file. Sequence beginning with the leader.

-j

C-region reference sequences (reverse complemented). Defaults to /usr/local/share/protocols/Universal/Mouse_IG_CRegion_RC.fasta.

-r

V-segment reference file. Defaults to /usr/local/share/igblast/fasta/imgt_mouse_ig_v.fasta.

-y

YAML file providing description fields for report generation.

-n

Sample identifier which will be used as the output file prefix. Defaults to a truncated version of the read 1 filename.

-o

Output directory. Will be created if it does not exist. Defaults to a directory matching the sample identifier in the current working directory.

-x

The mate-pair coordinate format of the raw data. Defaults to illumina.

-p

Number of subprocesses for multiprocessing tools. Defaults to the available cores.

-h

This message.

Example: presto-clontech

# Arguments
DATA_DIR=~/project
READS_R1=/data/raw/sample_R1.fastq
READS_R2=/data/raw/sample_R2.fastq
CREGION=/usr/local/share/protocols/Universal/Human_IG_CRegion_RC.fasta
VREF=/usr/local/share/igblast/fasta/imgt_human_ig_v.fasta
SAMPLE_NAME=sample
OUT_DIR=/data/presto/sample
NPROC=4

# Docker command
docker run -v $DATA_DIR:/data:z immcantation/suite:4.4.0 \
    presto-clontech -1 $READS_R1 -2 $READS_R2 -j $CREGION -r $VREF \
    -n $SAMPLE_NAME -o $OUT_DIR -p $NPROC

# Singularity command
singularity exec -B $DATA_DIR:/data immcantation_suite-4.4.0.sif \
    presto-clontech -1 $READS_R1 -2 $READS_R2 -j $CREGION -r $VREF \
    -n $SAMPLE_NAME -o $OUT_DIR -p $NPROC

Takara Bio / Clontech SMARTer v2 (UMI) immune sequencing kit preprocessing pipeline

A start to finish pRESTO processing script for Takara Bio / Clontech SMARTer v2 immune sequencing kit data that includes UMIs. C-regions are assigned using the universal C-region primer sequences are available from the Immcantation repository under protocols/Universal or inside the container under /usr/local/share/protocols/Universal.

Usage: presto-clontech-umi [OPTIONS]
-1

Read 1 FASTQ sequence file. Sequence beginning with the C-region.

-2

Read 2 FASTQ sequence file. Sequence beginning with the leader.

-j

C-region reference sequences (reverse complemented). Defaults to /usr/local/share/protocols/Universal/Human_IG_CRegion_RC.fasta.

-r

V-segment reference file. Defaults to /usr/local/share/igblast/fasta/imgt_human_ig_v.fasta.

-n

Sample identifier which will be used as the output file prefix. Defaults to a truncated version of the read 1 filename.

-o

Output directory. Will be created if it does not exist. Defaults to a directory matching the sample identifier in the current working directory.

-x

The mate-pair coordinate format of the raw data. Defaults to illumina.

-p

Number of subprocesses for multiprocessing tools. Defaults to the available cores.

-a

Specify to run multiple alignment of barcode groups prior to consensus. This step is skipped by default.

-h

This message.

Example: presto-clontech-umi

# Arguments
DATA_DIR=~/project
READS_R1=/data/raw/sample_R1.fastq
READS_R2=/data/raw/sample_R2.fastq
CREGION=/usr/local/share/protocols/Universal/Human_IG_CRegion_RC.fasta
VREF=/usr/local/share/igblast/fasta/imgt_human_ig_v.fasta
SAMPLE_NAME=sample
OUT_DIR=/data/presto/sample
NPROC=4

# Docker command
docker run -v $DATA_DIR:/data:z immcantation/suite:4.4.0 \
    presto-clontech-umi -1 $READS_R1 -2 $READS_R2 -j $CREGION -r $VREF \
    -n $SAMPLE_NAME -o $OUT_DIR -p $NPROC

# Singularity command
singularity exec -B $DATA_DIR:/data immcantation_suite-4.4.0.sif \
    presto-clontech-umi -1 $READS_R1 -2 $READS_R2 -j $CREGION -r $VREF \
    -n $SAMPLE_NAME -o $OUT_DIR -p $NPROC

10x Genomics V(D)J annotation pipeline

Assigns new annotations and infers clonal relationships to 10x Genomics single-cell V(D)J data output by Cell Ranger.

Usage: changeo-10x [OPTIONS]
-s

FASTA or FASTQ sequence file.

-a

10x Genomics cellranger-vdj contig annotation CSV file. Must corresponding with the FASTA/FASTQ input file (all, filtered or consensus).

-r

Directory containing IMGT-gapped reference germlines. Defaults to /usr/local/share/germlines/imgt/[species name]/vdj.

-g

Species name. One of human, mouse, rabbit, rat, or rhesus_monkey. Defaults to human.

-t

Receptor type. One of ig or tr. Defaults to ig.

-x

Distance threshold for clonal assignment. Specify “auto” for automatic detection. If unspecified, clonal assignment is not performed.

-m

Distance model for clonal assignment. Defaults to the nucleotide Hamming distance model (ham).

-e

Method to use for determining the optimal threshold. One of ‘gmm’ or ‘density’. Defaults to ‘density’.

-d

Curve fitting model. Applies only when method (-e) is ‘gmm’. One of ‘norm-norm’, ‘norm-gamma’, ‘gamma-norm’ and ‘gamma-gamma’. Defaults to ‘gamma-gamma’.

-u

Method to use for threshold selection. Applies only when method (-e) is ‘gmm’. One of ‘optimal’, ‘intersect’ and ‘user’. Defaults to ‘user’.

-b

IgBLAST IGDATA directory, which contains the IgBLAST database, optional_file and auxillary_data directories. Defaults to /usr/local/share/igblast.

-n

Sample identifier which will be used as the output file prefix. Defaults to a truncated version of the sequence filename.

-o

Output directory. Will be created if it does not exist. Defaults to a directory matching the sample identifier in the current working directory.

-f

Output format. One of changeo or airr. Defaults to airr.

-p

Number of subprocesses for multiprocessing tools. Defaults to the available cores.

-i

Specify to allow partial alignments.

-z

Specify to disable cleaning and compression of temporary files.

-h

This message.

Example: changeo-10x

# Arguments
DATA_DIR=~/project
READS=/data/raw/sample_filtered_contig.fasta
ANNOTATIONS=/data/raw/sample_filtered_contig_annotations.csv
SAMPLE_NAME=sample
OUT_DIR=/data/changeo/sample
DIST=auto
NPROC=4

# Run pipeline in docker image
docker run -v $DATA_DIR:/data:z immcantation/suite:4.4.0 \
    changeo-10x -s $READS -a $ANNOTATIONS -x $DIST -n $SAMPLE_NAME \
    -o $OUT_DIR -p $NPROC

# Singularity command
singularity exec -B $DATA_DIR:/data immcantation_suite-4.4.0.sif \
    changeo-10x -s $READS -a $ANNOTATIONS -x $DIST -n $SAMPLE_NAME \
    -o $OUT_DIR -p $NPROC

IgBLAST annotation pipeline

Performs V(D)J alignment using IgBLAST and post-processes the output into the Change-O data standard.

Usage: changeo-igblast [OPTIONS]
-s

FASTA or FASTQ sequence file.

-r

Directory containing IMGT-gapped reference germlines. Defaults to /usr/local/share/germlines/imgt/[species name]/vdj.

-g

Species name. One of human, mouse, rabbit, rat, or rhesus_monkey. Defaults to human.

-t

Receptor type. One of ig or tr. Defaults to ig.

-b

IgBLAST IGDATA directory, which contains the IgBLAST database, optional_file and auxillary_data directories. Defaults to /usr/local/share/igblast.

-n

Sample identifier which will be used as the output file prefix. Defaults to a truncated version of the sequence filename.

-o

Output directory. Will be created if it does not exist. Defaults to a directory matching the sample identifier in the current working directory.

-f

Output format. One of airr (default) or changeo. Defaults to airr.

-p

Number of subprocesses for multiprocessing tools. Defaults to the available cores.

-k

Specify to filter the output to only productive/functional sequences.

-i

Specify to allow partial alignments.

-z

Specify to disable cleaning and compression of temporary files.

-h

This message.

Example: changeo-igblast

# Arguments
DATA_DIR=~/project
READS=/data/presto/sample/sample-final_collapse-unique_atleast-2.fastq
SAMPLE_NAME=sample
OUT_DIR=/data/changeo/sample
NPROC=4

# Run pipeline in docker image
docker run -v $DATA_DIR:/data:z immcantation/suite:4.4.0 \
    changeo-igblast -s $READS -n $SAMPLE_NAME -o $OUT_DIR -p $NPROC

# Singularity command
singularity exec -B $DATA_DIR:/data immcantation_suite-4.4.0.sif \
    changeo-igblast -s $READS -n $SAMPLE_NAME -o $OUT_DIR -p $NPROC

Genotyping pipeline

Infers V segment genotypes using TIgGER.

Usage: tigger-genotype [options]
-d DB, --db=DB

Change-O formatted TSV (TAB) file.

-r REF, --ref=REF

FASTA file containing IMGT-gapped V segment reference germlines. Defaults to /usr/local/share/germlines/imgt/human/vdj/imgt_human_IGHV.fasta.

-v VFIELD, --vfield=VFIELD

Name of the output field containing genotyped V assignments. Defaults to V_CALL_GENOTYPED.

-x MINSEQ, --minseq=MINSEQ

Minimum number of sequences in the mutation/coordinate range. Samples with insufficient sequences will be excluded. Defaults to 50.

-y MINGERM, --mingerm=MINGERM

Minimum number of sequences required to analyze a germline allele. Defaults to 200.

-n NAME, --name=NAME

Sample name or run identifier which will be used as the output file prefix. Defaults to a truncated version of the input filename.

-o OUTDIR, --outdir=OUTDIR

Output directory. Will be created if it does not exist. Defaults to the current working directory.

-f FORMAT, --format=FORMAT

File format. One of ‘airr’ (default) or ‘changeo’.

-p NPROC, --nproc=NPROC

Number of subprocesses for multiprocessing tools. Defaults to the available processing units.

-h, --help

Show this help message and exit

Example: tigger-genotype

# Arguments
DATA_DIR=~/project
DB=/data/changeo/sample/sample_db-pass.tab
SAMPLE_NAME=sample
OUT_DIR=/data/changeo/sample
NPROC=4

# Run pipeline in docker image
docker run -v $DATA_DIR:/data:z immcantation/suite:4.4.0 \
    tigger-genotype -d $DB -n $SAMPLE_NAME -o $OUT_DIR -p $NPROC

# Singularity command
singularity exec -B $DATA_DIR:/data immcantation_suite-4.4.0.sif \
    tigger-genotype -d $DB -n $SAMPLE_NAME -o $OUT_DIR -p $NPROC

TIgGER infers the subject-specific genotyped V gene calls and saves the corrected calls in a new column, v_call_genotyped. TIgGER also generates a *_genotype.fasta file, which contains the subject-specific germline IGHV genes. In future analyses, if v_call_genotyped column is used to replace v_call, please remember to use this *_genotype.fasta file generated previously by TIgGER as the subject-specific IGHV gene germline. An example of this application can be found in the Clonal assignment pipeline section.

Clonal threshold inference pipeline

Performs automated detection of the clonal assignment threshold.

Usage: shazam-threshold [options]
-d DB, --db=DB

Tabulated data file, in Change-O (TAB) or AIRR format (TSV).

-m METHOD, --method=METHOD

Threshold inferrence to use. One of gmm, density, or none. If none, the distance-to-nearest distribution is plotted without threshold detection. Defaults to density.

-n NAME, --name=NAME

Sample name or run identifier which will be used as the output file prefix. Defaults to a truncated version of the input filename.

-o OUTDIR, --outdir=OUTDIR

Output directory. Will be created if it does not exist. Defaults to the current working directory.

-f FORMAT, --format=FORMAT

File format. One of ‘airr’ (default) or ‘changeo’.

-p NPROC, --nproc=NPROC

Number of subprocesses for multiprocessing tools. Defaults to the available processing units.

--model=MODEL

Model to use for the gmm model. One of gamma-gamma, gamma-norm, norm-norm or norm-gamma. Defaults to gamma-gamma.

--cutoff=CUTOFF

Method to use for threshold selection. One of optimal, intersect or user. Defaults to optimal.

--spc=SPC

Specificity required for threshold selection. Applies only when method=’gmm’ and cutoff=’user’. Defaults to 0.995.

--subsample=SUBSAMPLE

Number of distances to downsample the data to before threshold calculation. By default, subsampling is not performed.

--repeats=REPEATS

Number of times to recalculate. Defaults to 1.

-h, --help

Show this help message and exit

Example: shazam-threshold

# Arguments
DATA_DIR=~/project
DB=/data/changeo/sample/sample_genotyped.tab
SAMPLE_NAME=sample
OUT_DIR=/data/changeo/sample
NPROC=4

# Run pipeline in docker image
docker run -v $DATA_DIR:/data:z immcantation/suite:4.4.0 \
    shazam-threshold -d $DB -n $SAMPLE_NAME -o $OUT_DIR -p $NPROC

# Singularity command
singularity exec -B $DATA_DIR:/data immcantation_suite-4.4.0.sif \
    shazam-threshold -d $DB -n $SAMPLE_NAME -o $OUT_DIR -p $NPROC

Clonal assignment pipeline

Assigns Ig sequences into clonally related lineages and builds full germline sequences.

If the TIgGER, or another package, was applied previously to the data set for identifying a subject-specific genotype, including potentially novel V, D and/or J genes, a new directory $NEW_REF with the personalized germline database should be created. For example, if TIgGER was run to identify a subject-specific IGHV genotype, the directory would contain: 1) *_genotype.fasta file generated previously by TIgGER, which contains the subject-specific germline IGHV genes 2) imgt_human_IGHD.fasta and imgt_human _IGHJ.fasta, which contain the IMGT IGHD and IGHJ genes and can both be copied from the original germline database: /usr/local/share/germlines/imgt/human/vdj/. When changeo-clone is called, this new personalized germline database should be passed with parameter -r (see example below). And please remember to update v_call column with subject-specific IGHV call (for TIgGER this is found in v_call_genotyped column).

# update v_call
db %>%
   dplyr::mutate(v_call = v_call_genotyped) %>%
   select(-v_call_genotyped)
Usage: changeo-clone [OPTIONS]
-d

Change-O formatted TSV (TAB) file.

-x

Distance threshold for clonal assignment.

-m

Distance model for clonal assignment. Defaults to the nucleotide Hamming distance model (ham).

-r

Directory containing IMGT-gapped reference germlines. Defaults to /usr/local/share/germlines/imgt/human/vdj.

-n

Sample identifier which will be used as the output file prefix. Defaults to a truncated version of the input filename.

-o

Output directory. Will be created if it does not exist. Defaults to a directory matching the sample identifier in the current working directory.

-f

Output format. One of airr (default) or changeo.

-p

Number of subprocesses for multiprocessing tools. Defaults to the available cores.

-a

Specify to clone the full data set. By default the data will be filtering to only productive/functional sequences.

-z

Specify to disable cleaning and compression of temporary files.

-h

This message.

Example: changeo-clone

# Arguments
DATA_DIR=~/project
DB=/data/changeo/sample/sample_genotyped.tab
DIST=0.15
SAMPLE_NAME=sample
OUT_DIR=/data/changeo/sample
NPROC=4

# Run pipeline in docker image
docker run -v $DATA_DIR:/data:z immcantation/suite:4.4.0 \
    changeo-clone -d $DB -x $DIST -n $SAMPLE_NAME -o $OUT_DIR -p $NPROC

# Singularity command
singularity exec -B $DATA_DIR:/data immcantation_suite-4.4.0.sif \
    changeo-clone -d $DB -x $DIST -n $SAMPLE_NAME -o $OUT_DIR -p $NPROC

Example: changeo-clone with personalized germline database

# Arguments
DATA_DIR=~/project
NEW_REF=/data/personalized_germlines
DB=/data/changeo/sample/sample_genotyped.tab
DIST=0.15
SAMPLE_NAME=sample
OUT_DIR=/data/changeo/sample
NPROC=4

# Run pipeline in docker image
docker run -v $DATA_DIR:/data:z immcantation/suite:4.4.0 changeo-clone -r $NEW_REF -d $DB -x $DIST -n $SAMPLE_NAME -o $OUT_DIR -p $NPROC

# Singularity command
singularity exec -B $DATA_DIR:/data immcantation_suite-4.4.0.sif changeo-clone -r $NEW_REF -d $DB -x $DIST -n $SAMPLE_NAME -o $OUT_DIR -p $NPROC

Release Notes

Version 4.4.0: December 15, 2022

Version Updates:

  • presto 0.7.1

  • changeo 1.3.0

  • alakazam 1.2.1

  • shazam 1.1.2

  • tigger 1.0.1

  • scoper 1.2.1

  • dowser 1.1.1

  • prestor 0.0.8

  • blast 2.13.0

  • igblast 1.20.0

  • igphyml 1.1.5

  • airr-py 1.4.1

  • airr-r 1.4.1

Image Changes:

  • Updated base image to Fedora 37.

  • Added the Seurat R package (version 4.3.0).

  • Added build of constant region databases to imgt2igblast.sh.

Pipeline Changes:

  • Added the scoper-clone pipeline to perform clonal clustering using the SCOPer package.

  • Added the singlecell-filter pipeline to remove cells with with zero or more than one heavy chain sequences.

  • Updated changeo-10x. Added a new step to use singlecell-filter. Replaced DefineCones.py with scoper-clone.

Version 4.3.0: November 8, 2021

Version Updates:

  • presto 0.7.0

  • changeo 1.2.0

  • alakazam 1.2.0

  • shazam 1.1.0

  • scoper 1.2.0

  • dowser 0.1.0

  • prestor 0.0.7

Pipeline Changes:

  • Added the presto-clontech-umi pipeline to preprocess data from the Takara Bio / Clontech SMARTer v2 kit that includes UMIs.

Version 4.2.0: June 21, 2021

Version Updates:

  • presto 0.6.2

  • changeo 1.1.0

  • alakazam 1.1.0

  • airr-py 1.3.1

  • igblast 1.17.1

Pipeline Changes:

  • Added support for rat, rabbit and rhesus macaque to changeo-10x and changeo-igblast.

  • Added the -z argument to changeo-10x, changeo-igblast, and changeo-clone to allow compression and cleaning of temporary intermediate files to be disabled.

  • Updated changeo-igblast to use the new IgBLAST wrapper in changeo (AssignGenes).

Image Changes:

  • Updated base image to Fedora 33.

  • Fixed a Biopython v1.77 incompatibility in fastq2fasta.py.

  • Updated fetch_igblastdb.sh for new file locations and disabled download of old internal_data and optional_file directories by default.

  • Added support for rat, rabbit and rhesus macaque to fetch_imgtdb.sh.

  • Added download of artificially spliced V exon and leader sequences to fetch_imgtdb.sh. Sequences are downloaded into the leader_vexon subdirectory.

  • Added imgt2cellranger.py script which converts the IMGT reference germline header format into the input format required by cellranger mkvdjref.

Version 4.1.0: August 12, 2020

Version Updates:

  • presto 0.6.1

  • alakazam 1.0.2

  • shazam 1.0.2

  • scoper 1.1.0

  • rabhit 0.1.5

Pipeline Changes:

  • Fixed a clonal clustering threshold detection warning causing early exit of changeo-10x in some cases.

Image Changes:

  • Fixed a Biopython v1.77 incompatibility in clean_imgtdb.py.

  • Updated IgBLAST installation procedure for new structure of internal_data, optional_file, and database directories.

Version 4.0.0: June 1, 2020

General:

  • License changed to AGPL-3 for scripts, core packages, and other software code. Non-software content remains unchanged under the CC BY-SA 4.0 license.

  • Updated base image to Fedora 31.

Version Updates:

  • presto 0.6.0

  • changeo 1.0.0

  • alakazam 1.0.1

  • shazam 1.0.0

  • tigger 1.0.0

  • scoper 1.0.1

  • prestor 0.0.6

  • igphyml 1.1.3

  • igblast 1.16.0

  • airr-py 1.3.0

  • airr-r 1.3.0

Pipeline Changes:

  • Changed the default output format of all pipeline scripts to the AIRR Rearrangement standard. The legacy Change-O format is still supported by specifying -f changeo.

  • Added report generation and the -y argument specifying the report yaml config file to presto-clontech.

  • Changed name of the console logs in presto-clontech to pipeline-presto.log and pipeline-presto.err (was pipeline.log and pipeline.err).

  • Added --minseq and --mingerm arguments to tigger-genotype to control sequence and allele exclusion criteria.

  • The changeo-10x will no longer automatically archive the db-pass file in the temp_files.tar.gz tarball.

Version 3.1.0: December 16, 2019

Version Updates:

  • shazam 0.2.2

Version 3.0.0: August 29, 2019

Version Updates:

  • alakazam 0.3.0

  • presto 0.5.13

  • scoper 0.2.0

  • shazam 0.2.1

  • tigger 0.4.0

  • igphyml 1.0.6

  • igblast 1.14.0

  • blast 2.9.0

  • vsearch 2.13.6

  • cd-hit 4.8.1

Pipeline Changes:

  • Added the -f argument to multiple pipelines to toggle output between the Change-O standard (changeo) and the AIRR Rearrangement standard (airr).

  • Added the -m argument to changeo-clone to specify the distance model used for cloning.

  • Renamed the productive filter argument from -f to -k in changeo-igblast.

  • Added a method option of none to shazam-threshold to provide a dummy mode that simply plots the distance-to-nearest distribution without threshold detection.

  • Added --minseq and --mingerm arguments to tigger-genotype to allow specification of novel allele detection cutoffs.

Image Changes:

  • Added the RAbHIT R package.

  • Added the changeo-10x pipeline to process 10X Genomics V(D)J data.

  • Added the presto-clontech pipeline to preprocess data from the Takara Bio / Clontech SMARTer kit.

  • Added some universal C-region reference sequences to /usr/local/share/protocols.

  • Added the pipelines report command to show a description of available pipeline commands.

  • Fixed a dependency version issue that prevented tbl2asn from running.

  • Fixed Mac OS compatibility in fetch_imgtdb.

Version 2.7.0: February 1, 2019

Version Updates:

  • presto 0.5.11

  • changeo 0.4.5

  • shazam 0.1.11

  • blast 2.8.1

Version 2.6.0: December 9, 2018

Version Updates:

  • igblast 1.12.0

Pipeline Changes:

  • Added -i argument to changeo-igblast to allow retention of partial alignments.

Image Changes:

  • Base system changed to Fedora 29.

  • Moved setup of R package build environment to base image.

Version 2.5.0: November 1, 2018

Version Updates:

  • igblast 1.11.0

  • muscle 3.8.425

  • vsearch 2.9.1

Image Changes:

  • Added error checking to versions report command.

Version 2.4.0: October 27, 2018

Version Updates:

  • changeo 0.4.4

Version 2.3.0: October 21, 2018

Version Updates:

  • presto 0.5.10

  • changeo 0.4.3

  • tigger 0.3.1

Image Changes:

  • Added scoper R package.

  • Added IgPhyML.

  • Removed strict Rcpp version requirement (was fixed at 0.12.16).

  • Added libGL and libGLU to base image.

Version 2.2.0: October 5, 2018

Version Updates:

  • tigger 0.3.0

  • airr python library 1.2.1

Pipeline Changes:

  • Fixed compression error messages in changeo-igblast and changeo-clone.

  • Removed support for tigger versions below 0.3.0 from tigger-genotype.

Image Changes:

  • Adjusted version/changeset detection and output in the versions report and builds report commands.

Version 2.1.0: September 20, 2018

Version Updates:

  • alakazam 0.2.11

  • shazam 0.1.10

  • prestor 0.0.5

  • vsearch 2.8.4

  • BLAST 2.7.1

  • IgBLAST 1.10.0

Pipeline Changes:

  • Subsampling is no longer performed by default in shazam-threshold.

Version 2.0.0: September 8, 2018

Version Updates:

  • pRESTO 0.5.9

  • Change-O 0.4.2

  • airr 1.2.0

Image Changes:

  • Added tbl2asn.

Pipeline Changes:

  • Changed behavior of subsampling argument to shazam-threshold to subsample distances after nearest-neighbor distance calculation rather than rows before distance calculation.

Version 1.10.2: July 3, 2018

Pipeline Changes:

  • Added data set subsampling to shazam-threshold with a default value of 15000 records.

  • Added -f argument to changeo-igblast to allow optional filtering of non-productive/non-functional sequences.

  • Added -a argument to changeo-clone to allow retention of non-productive/non-functionals sequences during cloning.

  • Added -v argument to tigger-genotype to allow specification of the V genotyped column name.

Version 1.10.1: July 1, 2018

Pipeline Changes:

  • Fixed a bug wherein changeo-igblast and changeo-clone were not working with an unspecified output directory (-o argument).

  • Updated CPU core detection in tigger-genotype and shazam-threshold for compatability with new R package versions.

Accessory Script Changes:

  • Fixed fetch_imgtdb.sh creating empty mouse IGKC and IGLC files.

Image Changes:

  • Changed default CRAN mirror setting.

Version 1.10.0: May 23, 2018

Version Updates:

  • IgBLAST 1.9.0

Pipeline Changes:

  • Changed the default threshold detection method in shazam-threshold to the smoothed density estimate with subsampling to 15000 sequences.

  • Fixed a bug wherein changeo-igblast was not reading the -b argument.

Image Changes:

  • Added RDI R package.

  • Added CD-HIT.

  • Added AIRR python and R reference libaries.

  • Added git, BLAS, and LAPACK to base image.

Version 1.9.0: April 22, 2018

Version Updates:

  • alakazam 0.2.10

  • shazam 0.1.9

Pipeline Changes:

  • Added -l <model> argument to shazam-threshold to allow specification of the mixture model distributions to shazam::findThreshold.

Image Changes:

  • Set Rcpp version for R package builds to 0.12.16 (from 0.12.12).

Version 1.8.0: March 22, 2018

Version Updates:

  • alakazam 0.2.9

  • changeo 0.3.12

  • presto 0.5.7

Pipeline Changes:

  • Removed an intermediate file and the ParseHeaders-rename step in presto-abseq.

  • Modifed tigger-genotype to work with upcoming release of tigger v0.2.12.

  • Fixed parsing of output directory argument (-o) in preprocess-phix and changeo-clone.

Image Changes:

  • Added sudo access for the magus (default) user.

Version 1.7.0: February 6, 2018

Version Updates:

  • changeo 0.3.11

Version 1.6.0: January 29, 2018

Version Updates:

  • prestor 0.0.4

Version 1.5.0: January 17, 2018

Version Updates:

  • presto 0.5.6

Version 1.4.0: December 29, 2017

Version Updates:

  • presto 0.5.5

  • phylip 3.697

Pipeline Changes:

  • Fixed a bug in presto-abseq preventing relative file paths from working with the -r argument.

  • changeo-igblast no longer terminates upon IgBLAST warnings.

Accessory Script Changes:

  • Fixed an output directory bug in fastq2fasta.py.

Image Changes:

  • Added Stern, Yaari and Vander Heiden, et al 2014 primer sets.

Version 1.3.0: October 17, 2017

Version Updates:

  • changeo 0.3.9

Pipeline Changes:

  • Fixed a bug in presto-abseq preventing relative file paths from working with the -r argument.

Version 1.2.0: October 05, 2017

Version Updates:

  • changeo 0.3.8

Version 1.1.0: September 22, 2017

Version Updates:

  • alakazam 0.2.8

  • tigger 0.2.11

  • prestor 0.0.3

Image Changes:

  • Added preprocess-phix script that removes PhiX reads.

  • Added fetch_phix.sh script that downloads the PhiX174 genome.

  • Added builds script to record and report image build date and package changesets.

  • Added -x <coordinate system> argument to presto-abseq.

  • Forced install of Rcpp to be fixed at version 0.12.12.

  • Added /oasis mount point

Version 1.0.0: August 08, 2017

  • Initial meta-versioned image.

prestoR

The presto report package (prestoR) is an R package for generating quality control plots from pRESTO log tables.

Example Report

Download & Installation

prestor is current not available from CRAN and must be installed from the bitbucket repo directly by first cloning the bitbucket repository:

https://bitbucket.org/kleinstein/prestor

Then build using the following R commands from the package root:

install.packages(c("devtools", "roxygen2"))
library(devtools)
install_deps(dependencies=T)
document()
install()

Alternatively, you can install directly form the bitbucket repository, but this will not build the documentation:

library(devtools)
install_bitbucket("kleinstein/prestor@master")

Documentation

For an index of available functions see:

help(package="prestor")

For some common tasks, see the following help pages:

Function

Description

buildReport

Generate a presto pipeline report

loadConsoleLog

Parse console output from a pRESTO pipeline

loadLogTable

Parse tabled log output from pRESTO tools

pdfReport

R Markdown to PDF format for pRESTO reports

plotAlignSets

Plot AlignSets log table

plotAssemblePairs

Plot AssemblePairs log table

plotBuildConsensus

Plot BuildConsensus log table

plotConsoleLog

Plot console output from a pRESTO pipeline

plotFilterSeq

Plot FilterSeq log table

plotMaskPrimers

Plot MaskPrimer log table

plotParseHeaders

Plot ParseHeaders log table

report_abseq3

Generate a report for an AbSeq V3 pRESTO pipeline script

Welcome to the Immcantation Portal!

Advances in high-throughput sequencing technologies now allow for large-scale characterization of B cell receptor (BCR) and T cell receptor (TCR) repertoires. The high germline and somatic diversity of the adaptive immune receptor repertoire (AIRR) presents challenges for biologically meaningful analysis - requiring the development of specialized computational methods.

The Immcantation framework provide a start-to-finish analytical ecosystem for high-throughput AIRR-seq datasets. Beginning from raw reads, Python and R packages are provided for pre-processing, population structure determination, and repertoire analysis.

https://img.shields.io/static/v1?label=AIRR-C%20sw-tools%20v1&message=compliant&color=008AFF&labelColor=000000&style=plastic

Immcantation supports both the original Change-O standard and the new Adaptive Immune Receptor Repertoire (AIRR) standard developed by the AIRR Community (AIRR-C).

https://img.shields.io/docker/pulls/immcantation/suite

The different tools are available from PyPi, CRAN and Bitbucket. Versioned containers with all tools installed are hosted on Docker Hub.

Core Packages

Click on the images below for more details.

pRESTO

downloads

pRESTO

  • Quality control

  • Read assembly

  • UMI processing

  • Error profiling

Change-O

downloads

Change-O

  • V(D)J reference alignment standardization

  • Clonal clustering

  • Germline reconstruction

  • Conversion and annotation

alakazam

downloads

Alakazam

  • Clonal lineage reconstruction

  • Lineage topology analysis

  • Repertoire diversity

  • V(D)J gene usage

  • Physicochemical property analysis

SHazaM

downloads

SHazaM

  • Mutation profiling

  • Selection pressure quantification

  • Empirical SHM models

  • Chimera detection

  • Clonal clustering threshold tuning

|tigger-img|

downloads

TIgGER

  • Novel polymorphism detection

  • Genotyping

SCOPer

downloads

SCOPer

  • Spectral clonal clustering methods

prestoR

prestoR

  • pRESTO report generation

dowser

downloads

dowser

  • Phylogenetic analysis on B cell receptor repertoires

Contributed Packages

Click on the images below for more details.

RDI

RDI

  • Repertoire Dissimilarity Index

RAbHIT

RAbHIT

  • Determination of V-D-J haplotypes

IgPhyML

IgPhyML

  • Clonal lineage tree construction

  • Mutation/selection hypothesis testing

sumrep

sumrep

  • Generate repertoire summary statistics.

  • Visualize and comparing repertoire summaries.