Skip to main content

A pacakge which provides various ways to analyze NGS data from phage display campaigns

Project description

Welcome to ExpoSeq

ExpoSeq is a powerful pipeline for processing and analyzing FASTQ files from sequencing phage Display panning samples. It utilizes MiXCR to align and assemble the data which you can subsequently analyze in multiple plots. The pipeline focuses on analysing the identity between samples but also applies various clustering techniques to analyse the relation between the sequences. Besides, you can add binding data to relate the clusters to affinity. overview

Installation

Open a virtual environment and type pip install ExpoSeq. Ensure that you have python > 3.11 installed.

To get started, please download and follow the instructions for MiXCR under the following link: https://docs.milaboratories.com/mixcr/getting-started/installation/ You can also only use the test version of ExpoSeq without installing it.

Importing the Plotting Tool

To access the plotting tool, you will need to import it into your console by running the following command:

from ExpoSeq.pipeline import PlotManager

Using the PlotManager

The PlotManager is the main interface for creating various plots using your FASTQ data. You can create an instance of the PlotManager by running the following command:

plot = PlotManager()

To use the PlotManager to create plots, you will need to upload your FASTQ data to the pipeline. This will automatically happen as soon as you have called the PlotManager. In the following you can obtain an insight in the worklow of the pipeline after the initial call. There, the blue boxes indicate your input, gray are optional inputs while black and red are processing steps and output, respectively.
relative_path_to_image
If you just want to test the pipeline and see its functions you can call:

plot = PlotManager(test_version = True)

Alternatively you can take a look in the Jupyter script

Once you have called the test version or have finished the data processing, you can use the PlotManager to create a variety of plots, such as an identity plot based on the jaccard similarity. Here is an example of how to create this type of plot:

plot.jaccard()

If you want to change the style of the plot you can use the PlotManager. If you called it plot you can do for instance the following:

plot.style.title_xaxis("your_title")

If you want to implement further plot change you can also refer to the matplotlib.pyplot library and change it in the same way as following:

import matplotlib.pyplot as plt
plt.xlabel("your_title")

If you would like to have details about the inputs and functions of the PlotManager call:
help(plot)

You can also call

help(plot.jaccard)

Upload binding data

If you have conducted DELFIA or other techniques to receive binding data for certain sequences (usually sanger sequenced), you can upload these in a certain format and use these for clustering to potentially find other suitable sequences with high binding. You need to import the data as csv file where the first column starts in the first row with the header: aaSeqCDR3 which are the sequences. It is very important to keep the header at this position. In the second column you can put the binding data for your epitope which you can name in the first row however you prefer. You can have a look in this csv file to see the general structure of the file. Moreover, you can download it and import it in Excel. Therefore, open Excel and choose under "Data" in the Excel header "From Text/CSV". Then make sure to delete the first column which contains the row number. After that you can delete the random data in that excel sheet and add your own. Finally you can export the data as a csv and import it with the pipeline either in the initial uploading process which will be prompted or with the command

plot.add_binding_data()

Note: If you decide to add more binding data to your analysis you can just use the same command and choose the new file with the filechooser and it will be added to the existing data.

References

[1] Dmitriy A. Bolotin, Stanislav Poslavsky, Igor Mitrophanov, Mikhail Shugay, Ilgar Z. Mamedov, Ekaterina V. Putintseva, and Dmitriy M. Chudakov. "MiXCR: software for comprehensive adaptive immunity profiling." Nature methods 12, no. 5 (2015): 380-381.

[2] Dmitriy A. Bolotin, Stanislav Poslavsky, Alexey N. Davydov, Felix E. Frenkel, Lorenzo Fanchi, Olga I. Zolotareva, Saskia Hemmers, Ekaterina V. Putintseva, Anna S. Obraztsova, Mikhail Shugay, Ravshan I. Ataullakhanov, Alexander Y. Rudensky, Ton N. Schumacher & Dmitriy M. Chudakov. "Antigen receptor repertoire profiling from RNA-seq data." Nature Biotechnology 35, 908–911 (2017)

[3] (1, 2) Tareen A, Kinney JB (2019) Logomaker: beautiful sequence logos in Python. Bioinformatics btz921. bioRxiv doi:10.1101/635029.

[4] M.A. Larkin and others, Clustal W and Clustal X version 2.0, Bioinformatics, Volume 23, Issue 21, November 2007, Pages 2947–2948, https://doi.org/10.1093/bioinformatics/btm404

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

ExpoSeq-3.1.1.tar.gz (7.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ExpoSeq-3.1.1-py3-none-any.whl (7.3 MB view details)

Uploaded Python 3

File details

Details for the file ExpoSeq-3.1.1.tar.gz.

File metadata

  • Download URL: ExpoSeq-3.1.1.tar.gz
  • Upload date:
  • Size: 7.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for ExpoSeq-3.1.1.tar.gz
Algorithm Hash digest
SHA256 c7cd83329c35b97f13f53d1d627d8028da5a7587f105abd130dd216603677f06
MD5 1a541a6f7691c11f738aede5da4a8e39
BLAKE2b-256 acc77e13a1d72378a5f70dacd41986bf5d0a1f9b5edcf77f4aaab82aa27b3f12

See more details on using hashes here.

File details

Details for the file ExpoSeq-3.1.1-py3-none-any.whl.

File metadata

  • Download URL: ExpoSeq-3.1.1-py3-none-any.whl
  • Upload date:
  • Size: 7.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.3

File hashes

Hashes for ExpoSeq-3.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4eec1c9ded06dd5a2601de0a59e55dfbf55241ac8f1d6b4c2c12687ec235cb61
MD5 dd5277a110246573b41d3ce5f12a3a24
BLAKE2b-256 7f253c6f99c2d7e8122b16c8b3f8b47e4bd0daf48b6ed199b6177d733a742ff9

See more details on using hashes here.

Supported by

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