Package: iptkl
The immunopeptidomic toolkit library, IPTKIntroduction and Project AimIPTK is a Python library specialized in the analysis of HLA-peptidomes identified through an immunopeptidomic(IP) pipeline.
The library provides a high level API for analyzing and visualizing the identified peptides, integrating transcritomics and protein structure information for a rich analysis of the identified immunopeptidomes. It also provides a toolbox for integrating and comparing different experiments and/or different runs.Release 0.6 noticeVersion 0.6 brings major upgrades to the library and introduce a wide array of function and classes for automating and accelerating IPTK performance1- IPTK can now parse and work with mzIdentML files using the function parse_mzIdentML_to_identification_table define in the IO module of the library2- IPTK can now process and read mzML files directly using PyOpenMS3- IPTK has an improved function executional speed thanks to the AcceleratedFunctions module in the Analysis module which provides an acceleration using Numba4- Current release also introduce, the Wrappers module which provide a simple abstraction for creating Experiment and ExperimentSet5- Introducing ReplicatedExperiments which provides a simple API for creating experiments obtained from replicates6- IPTK, current support concurrent execution, the wrapper submodules, now utilizes multiprocessing for parsing and reading multiple datasets on-parallel7- Introducing, chordDiagram for showing overlap among experiments and Proband of experimentsRelease 0.6.6 notice1- Introducing GOEngine class which provides an easy-to-use wrapper around goatools for performing GOEA on the identified proteins.2- Current release supports Jaccard index as a metric of similarity among experiments3- Introducing support for visualizing GOEA results4- Correction of minor bugs and documentation typos in previous releasesThe road to version 1.0The major plan is to, first, increase and enhance IPTK scale and execution speed by offloading computational intensive tasks to RUST. Second, increase automation by providing custom analysis recipes for performing commonly used routines. Third, provide an API for integrating other omics layers, namely metabolomics and proteomics. Finally, adding support to PTM modified HLA peptides and proteinsPlanned features for 0.7.* Release1. Release 0.7.1 will aim at supporting the integration of Proteomic data with the library2. Release 0.7.2 will aim at supporting the integration of Metabolomics data with the library3. Release 0.7.3 will aim at standardizing all omics API and provide a high-level abstraction for working with them4. Release 0.7.4-0.7.7 will aim at re-implement all the class in Rust and provide a python wrapper around these classes, Thus ensuring fast and concurrent executionPlanned features for 0.8.*1. Release 0.8.1-0.8.4 will aim at re-implement all IPTK parsers in Rust and provide a python binder to it2. Release 0.8.5-0.8.8 will aim at re-implementing all analysis function using RustPlanned features for 0.9.*Different minor releases will introduce different analysis Recipes to automate analysis tasksPlanning for version 1.0.0IPTK version 1.0 is release on PyPi and on BioCondaPrevious versions Release noticeRelease 0.5 notice:1- Adding a class to query AFND database for allele frequency world-wide.2- Adding function for plotting a choropleth for allele frequencies.3- Adding classes for working directly with mzML files using pyopenMS framework4- An experimental class that act as database interface and provide method for storing and querying immunopeptidomic dataRelease 0.4.11 notice:Adding more control to the function plot_MDS_from_ic_coverage to fine-tune its behavior, for example, by controlling the random seed.Release 0.4.10 notice:Corrected a bug in the Experiment class to correctly compute the length of peptides containing parentheses. This bug caused the len function to return the number of characters in the sequence instead of the number of amino acids.Release 0.4.8 notice:Corrected a bug in the Peptide class to manage peptides containing parentheses in the sequence. This bug caused the len function to return the number of characters 
in the sequence instead of the number of amino acids.Release 0.4.7 notice:Minor corrections in the visualization moduleRelease 0.4.6 notice:Minor corrections in the documentation and the default values for some parameters in the visualization functionsRelease 0.4.0 notice:1- Adding function to compute immunopeptiomic coverage matrix2- Introducing MDS plots for comparing the similarities between runs based on immunopeptidomic coverageTutorialsThe library have three notebooks that provide a step-by-step guidance to use the library and to utilize its major APIs for interacting with an IPs data.
These tutorial can be found at the Tutorial directory at the project's Github page.IPTK has been documented using Sphinx, the manual of the library can be found at docs directory and online atreadthedocsInstallationThe library can be installed using pip as follows:pip install iptkl --userFundingThe project was funded by the German Research Foundation (DFG) (Research Training Group 1743, ‘Genes, Environment and Inflammation’).