Skip to content
cccskills
FreePublished on GitHub

bioconductor-proteodisco

ProteoDisco is an R package to facilitate proteogenomics studies. It houses functions to create customized (variant) protein databases based on user-submitted genomic variants, splice-junctions, fusion genes and manual transcript sequences. The flexible workflow can be adopted to suit a myriad of research and experimental settings.

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md8.9 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

ProteoDisco

Workflows

Standard Workflow

Generate a customized protein database incorporating genomic variants (SNVs, MNVs, InDels) from VCF/MAF files.

library(ProteoDisco)

# Generate the ProteoDiscography
ProteoDiscography.hg19 <- ProteoDisco::generateProteoDiscography(
  TxDb = TxDb.Hsapiens.UCSC.hg19.knownGene::TxDb.Hsapiens.UCSC.hg19.knownGene,
  genomeSeqs = BSgenome.Hsapiens.UCSC.hg19::BSgenome.Hsapiens.UCSC.hg19
)

# Import genomic variants
ProteoDiscography.hg19 <- ProteoDisco::importGenomicVariants(
  ProteoDiscography = ProteoDiscography.hg19,
  files = system.file('extdata', 'validationSet_hg19.vcf', package = 'ProteoDisco'),
  samplenames = 'Validation Set (GRCh37)',
  threads = 1,
  performAnchorCheck = FALSE
)

# Incorporate genomic variants into transcripts
ProteoDiscography.hg19 <- ProteoDisco::incorporateGenomicVariants(
  ProteoDiscography = ProteoDiscography.hg19,
  aggregateSamples = FALSE,
  aggregateWithinExon = TRUE,
  aggregateWithinTranscript = TRUE,
  ignoreOverlappingMutations = TRUE,
  threads = 1
)

# Export to FASTA
ProteoDisco::exportProteoDiscography(
  ProteoDiscography = ProteoDiscography.hg19,
  outFile = 'example.fasta',
  aggregateSamples = TRUE
)

Note: Inputs are a TxDb object, genome sequences, and VCF/MAF files; the output is a customized protein database in FASTA format.

Splice Junctions Workflow

Generate a customized protein database incorporating alternative splicing events from BED or custom splice junction files.

library(ProteoDisco)

# Initialize ProteoDiscography
ProteoDiscography.hg19 <- ProteoDisco::generateProteoDiscography(
  TxDb = TxDb.Hsapiens.UCSC.hg19.knownGene::TxDb.Hsapiens.UCSC.hg19.knownGene,
  genomeSeqs = BSgenome.Hsapiens.UCSC.hg19::BSgenome.Hsapiens.UCSC.hg19
)

# Import splice junctions
ProteoDiscography.hg19 <- ProteoDisco::importSpliceJunctions(
  ProteoDiscography = ProteoDiscography.hg19,
  inputSpliceJunctions = system.file('extdata', 'spliceJunctions_pyQUILTS_chr22.bed', package = 'ProteoDisco'),
  samples = c('pyQUILTS'),
  isTopHat = TRUE,
  aggregateSamples = FALSE,
  removeExisting = TRUE
)

# Generate junction models
ProteoDiscography.hg19 <- ProteoDisco::generateJunctionModels(
  ProteoDiscography = ProteoDiscography.hg19,
  maxDistance = 150,
  skipCanonical = TRUE,
  threads = 1
)

Note: Inputs are splice junction BED files or custom tables; the output is putative splice-isoform fragments added to the ProteoDiscography.

Manual Transcripts Workflow

Import manually-curated or long-read transcript sequences to check for proteotypic peptides and export to a customized protein database.

library(ProteoDisco)

# Initialize ProteoDiscography
ProteoDiscography.hg19 <- ProteoDisco::generateProteoDiscography(
  TxDb = TxDb.Hsapiens.UCSC.hg19.knownGene::TxDb.Hsapiens.UCSC.hg19.knownGene,
  genomeSeqs = BSgenome.Hsapiens.UCSC.hg19::BSgenome.Hsapiens.UCSC.hg19
)

# Create manual sequences DataFrame
testSeq1 <- Biostrings::DNAString('ATGACCGCGTCCTCCTCCAGCGACTATGGACAGACTTCCAAGATGAGCCCACGCGTCCCTCAGCAGGATTGGCTGTCTCAACCCCCAGCCAGGGTCACCATCAAAATGGAATGTAACCCTAGCCAGGTGAATGGCTCAAGGAACTCTCCTGATGAATGCAGTGTGGCCAAAGGCGGGAAGATGGTGGGCAGCCCAGACACCGTTGGGATGAACTACGGCAGCTACATGGAGGAGAAGCACATGCCACCCCCAAACATGACCACGAACGAGCGCAGAGTTATCGTGCCAGCAGATCCTACGCTATGGAGTACAGACCATGTGCGGCAGTGGCTGGAGTGGGCGGTGAAAGAATATGGCCTTCCAGACGTCAACATCTTGTTATTCCAGAACATCGATGGGAAGGAACTGTGCAAGATGACCAAGGACGACTTCCAGAGGCTCACCCCCAGCTACAACGCCGACATCCTTCTCTCACATCTCCACTACCTCAGAGAGACTCCTCTTCCACATTTGACTTCAGATGATGTTGATAAAGCCTTACAAAACTCTCCACGGTTAATGCATGCTAGAAACACAGGGGGTGCAGCTTTTATTTTCCCAAATACTTCAGTATATCCTGAAGCTACGCAAAGAATTACAACTAGGCCAGTCTCTTACAGATAA')
manualSeq <- S4Vectors::DataFrame(
  sample = 'Validation Set (GRCh37)',
  identifier = 'TMPRSS2-ERG prostate cancer specific isoform 1',
  gene = 'TMPRSS2-ERG',
  Tx.SequenceMut = Biostrings::DNAStringSet(base::list(testSeq1))
)

# Import manual transcripts
ProteoDiscography.hg19 <- ProteoDisco::importTranscriptSequences(
  ProteoDiscography.hg19,
  transcripts = manualSeq,
  removeExisting = TRUE
)

Note: Inputs are a DataFrame containing manually-curated or long-read transcript sequences; the output is imported transcript sequences added to the ProteoDiscography.

When to Use

  • To generate customized protein databases (FASTA) incorporating genomic variants (SNVs, MNVs, InDels) from VCF or MAF files using importGenomicVariants() and incorporateGenomicVariants().
  • To model alternative splicing events and novel exon-exon junctions from BED or custom splice junction files using importSpliceJunctions() and generateJunctionModels().
  • To integrate manually-curated or long-read transcript sequences (e.g., from Nanopore sequencing) using importTranscriptSequences().
  • To identify unique proteotypic peptides by comparing cleaved variant sequences against wild-type databases using checkProteotypicFragments().

When NOT to Use

  • For general mass spectrometry data preprocessing, normalization, or statistical analysis of protein abundance; use MSnbase or MSstats instead.
  • For general peptide-spectrum matching or raw spectra visualization; use Spectra instead.

Data Requirements

  • Reference genome sequences (e.g., BSgenome object or FASTA file read via readDNAStringSet()).
  • Transcript annotations (e.g., TxDb object containing 'EXONID', 'TXID', and 'GENEID' columns, or GTF/GFF file parsed via makeTxDbFromGFF()).
  • Genomic variants in VCF or MAF format, or as VRanges objects.
  • Splice junctions in BED, TopHat, or custom tabular format.

Key Parameters

  • performAnchorCheck (TRUE): Validates whether reference alleles in VCF/MAF correspond to nucleotides on the reference genome.
  • ignoreNonMatch (FALSE): If TRUE, removes non-matching reference anchor records instead of throwing an error.
  • aggregateSamples (FALSE): Determines whether to aggregate samples or generate mutant transcripts per sample.
  • aggregateWithinExon (TRUE): If TRUE, multiple mutations within the same exon (CDS) are placed on the same mutant CDS sequence.
  • aggregateWithinTranscript (TRUE): If TRUE, aggregates multiple mutant exons within the same transcript.
  • ignoreOverlappingMutations (TRUE): If TRUE, retains only the first of overlapping mutations on the same coding position.
  • maxDistance (150): Maximum distance from a known exon boundary before introducing a novel exon in junction modeling.
  • skipCanonical (TRUE): If TRUE, skips known canonical exon-exon junctions in junction modeling.

Best Practices

  • Perform a sanity check on reference anchors during variant import to ensure concordance between the reference genome and the variant caller.
  • Use summary() or print() on the ProteoDiscography object to inspect imported variants, mutational types, and sample counts.
  • Convert transcript identifiers (e.g., ENTREZ IDs) to gene symbols using AnnotationDbi::select() and org.Hs.eg.db to ease downstream interpretation.
  • Use clearLoggers() and registerLogger() from ParallelLogger to configure logging thresholds (e.g., 'TRACE' or 'INFO') for detailed execution tracking.

Common Pitfalls

  • Mismatches between the reference genome used for variant calling and the one supplied to generateProteoDiscography() will cause anchor check failures. Fix by ensuring identical reference versions or setting performAnchorCheck = FALSE (not recommended).
  • Missing 'EXONID', 'TXID', or 'GENEID' columns in the custom TxDb object. Fix by using standard Bioconductor annotation packages or correctly formatted GTF files with makeTxDbFromGFF().
  • Overlapping mutations on the same coding position causing errors. Fix by setting ignoreOverlappingMutations = TRUE to retain only the first mutation.

Alternatives

  • MSstats for statistical relative quantification of proteins and peptides.
  • MSnbase for mass spectrometry data container and processing.
  • Spectra for low-level mass spectrometry raw data representation and handling.

Citations

  • van Riet et al. (2026), ProteoDisco: Generation of customized protein databases.

References

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

The package contains functions for exploratory oligonucleotide array analysis. The dependence on tkWidgets only concerns few convenience functions. 'affy' is fully functional without it.

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

This tool uses the label-tree function from HyPhy to annotate a phylogenetic tree. It allows users to select a subset of leaves using either a regular expression or a list of sequence names, and then apply a specified label to these selecte

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

This package provides a client for the Bioconductor AnnotationHub web resource. The AnnotationHub web resource provides a central location where genomic files (e.g., VCF, bed, wig) and other resources from standard locations (e.g., UCSC, En

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

apeglm provides Bayesian shrinkage estimators for effect sizes for a variety of GLM models, using approximation of the posterior for individual coefficients.

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

ASURAT is a software for single-cell data analysis. Using ASURAT, one can simultaneously perform unsupervised clustering and biological interpretation in terms of cell type, disease, biological process, and signaling pathway activity. Inputting a single-cell RNA-seq data and knowledge-based databases, such as Cell Ontology, Gene Ontology, KEGG, etc., ASURAT transforms gene expression tables into original multivariate tables, termed sign-by-sample matrices (SSMs).

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

AUCell allows to identify cells with active gene sets (e.g. signatures, gene modules...) in single-cell RNA-seq data. AUCell uses the "Area Under the Curve" (AUC) to calculate whether a critical subset of the input gene set is enriched with

The English summary is being prepared. Showing the original description.

bioMate-AI/biomate-bioconductor-kb797Updated Jun 21, 2026

See all skills by bioMate-AI

Report a problem with this skill