Package: purple-bio
╔═══╦╗░╔╦═══╦═══╦╗░░╔═══╗║╔═╗║║░║║╔═╗║╔═╗║║░░║╔══╝║╚═╝║║░║║╚═╝║╚═╝║║░░║╚══╗║╔══╣║░║║╔╗╔╣╔══╣║░╔╣╔══╝║║░░║╚═╝║║║╚╣║░░║╚═╝║╚══╗╚╝░░╚═══╩╝╚═╩╝░░╚═══╩═══╝Picking Unique Relevant Peptides for viraL ExperimentsVersion: 0.4.2DescriptionRequirementsCloneTarget SelectionHow-ToHow-To-pipHow-To-CondaConfigurationOutputWorkflowDescriptionEmerging virus diseases present a global threat to public health. To detect viral pathogens in time-critical scenarios, accurate and fast diagnostic assays are required. Such assays can now be established using mass spectrometry-based targeted proteomics, by which viral proteins can be rapidly detected from complex samples down to the strain level with high sensitivity and reproducibility. Developing such targeted assays involves tedious steps of peptide candidate selection, peptide synthesis, and assay optimization. Peptide selection requires extensive preprocessing by comparing candidate peptides against a large search space of background proteins. Here we present Purple (Picking unique relevant peptides for viral experiments), a software tool for selecting target-specific peptide candidates directly from given proteome sequence data. It comes with an intuitive graphical user interface, various parameter options and a threshold-based filtering strategy for homologous sequences. Purple enables peptide candidate selection across various taxonomic levels and filtering against backgrounds of varying complexity. Its functionality is demonstrated using data from different virus species and strains. Our software enables to build taxon-specific targeted assays and paves the way to time-efficient and robust viral diagnostics using targeted proteomics.RequirementsPython 3.4+tqdmbiopythonpyyamlClonegitclonehttps://gitlab.com/HartkopfF/PurpleTarget SelectionOnly the root directory is used and all subdirectories are excluded as well as all files not ending with the .fasta ending. Two options of target selection are implemented.
The first one is to name targets in a list separated by a comma. Using this method, all databases are merged and every protein that is containing one of the targets in the origin species (OS) part of the UniProt header is considered as a target protein. The process of origin species matching is not case sensitive.  Non-target proteins are used as background database.
The second method is to specify one file in the database directory as target database. All  remaining databases are merged and are assembled as background database. As the background database could still consist of proteins originating in one of the target species, every protein in the background database is removed from further analysis if it matches a target species in the target database.How to use PurpleDownload the latest version from thereleases page(no Python required).Double-clicking the downloaded executable file starts Purple.Load aconfigurationfile or edit parameters (database folder and target selection) via graphical user interface.Open results in theoutput folderHow to use Purple directly in python via pipPurple is available on PyPihere:Install the latest version with:pipinstallpurple-bioorpip3installpurple-bioEdit the config fileconfig.yml(download template) and specify database folder and target.Add these lines to your python 3.x code:importpurple
purple.main("path/to/config.yml")Open results in theoutput folderHow to use Purple directly in CondaInstall the latest version with:condainstallpurple-bioEdit the config fileconfig.yml(download template) and specify database folder and target.Add these lines to your python 3.x code:importpurple
purple.main("path/to/config.yml")Open results in theoutput folderConfigurationConfiguration yaml file template (download):purple:comment:commenti_am_not_sure_about_target:trueleucine_distincion:falseleucine_distinction:falsemax_len_peptides:50min_len_peptides:5path_DB:../res/DBpath_output:../output/print_peptides:trueproline_digestion:falseremoveFragments:truetarget:[target1,target2]targetFile:path/to/targetFilethreshold:80update_DB:trueList of parameters| Parameter                  | Description                                                 | Example                    | Default    |
|----------------------------|-------------------------------------------------------------|----------------------------|------------|
| target                     | List of targets to find unique peptides                     | [Hepatitis B, Hepatitis A] | No default |
| threshold                  | Threshold to filter matches                                 | Values between 0 and 100   | 70         |
| update_DB                  | Build a database or use old one                             | True or False              | False      |
| path_DB                    | Path to folder with fasta files                             | C:/myFASTAs/               | ../res/DB/ |
| path_output                | Path to output folder to store results                      | C:/results/                | ../output/ |
| targetFile                 | File name of the fasta with target entries                  | target.fasta               |            |
| i_am_not_sure_about_target | Option to check targets before matching peptides            | True or False              | True       |
| max_len_peptides           | Maximum length of peptides                                  | Positive numerical values  | 25         |
| min_len_peptides           | Minimum length of peptides                                  | Positive numerical values  | 5          |
| removeFragments            | Option to remove proteins with "(Fragments)" in the header  | True or False              | No default |
| leucine_distinction        | Option to enable distinction of leucine and isoleucine      | True or False              | No default |
| proline_digestion          | Option to apply proline digestion rule                      | True or False              | No default |
| print_peptides             | Print peptides at the end                                   | True or False              | False      |
| comment                    | Comments for the log book                                   | Text or numbers            | no comment |OutputThe output includes a folder with seven files for shared, exact matching, homologous matching, digested and final unique peptides for a specifc target. Additionally, a log of the command line output of Purple and a logbook with a short summary of the run is provided.Information in final results file:-Peptide:Unique peptide sequence.-Peptide weight:Peptide weight of the unique peptide calculated with Biopython.-Highest background consensus:Highest background consensus of the homologous matching for each peptide.-Occurrences:Number of occurrences for each peptide.-Species:Species of the peptide.-Protein name:Names of the proteins containing this peptide.-Fasta entries:Headers of the fasta entries containing this peptide.-Description:Complete header of the proteins listed in protein name.Workflow