Code Monkey home page Code Monkey logo

spritz's Introduction

Spritz

Software for RNA-Seq analysis on Windows, including creating sample-specific proteoform databases from genomic data

GitHub Action Builds Release Github All Releases Docker Pulls Follow us on Twitter

Spritz can be downloaded here.

Spritz uses snakemake and Docker to install and run commandline tools for Next-Generation Sequencing (NGS) analysis. These tools include an adapted version of SnpEff to annotate sequence variations and create an annotated protein database in XML format. The combinatorics of producing full-length proteoforms from these annotations is written in mzLib's VariantApplication class.

image

Running Spritz with GUI

  1. Install Docker Desktop for Windows.

  2. Allocate resources to Docker. There are two ways to do this, described in the Spritz wiki:

    1. The recommended method requires Windows 10 version 2004 and is more robust. Here, we allocate computer resources to Docker like any other program.
    2. The alternate method is available on all Windows versions but is less robust. Here, we allocate computer resources to Docker using a virtual machine that's packaged with Docker.
  3. Launch Spritz.

    Step 1: Input SRA accessions and/or add FASTQ files.

    • SRAs are added with the button indicating single-end or paired-end.
    • FASTQ files must end with *_1.fastq if single-end, and paired-end sequences must have the same filename other than ending with *_1.fastq and *_2.fastq.

    Step 2: Create and customize your Spritz workflow.

    Step 3: Run Spritz!

    Intro-01

GUI System Requirements

  • Environment:
  • 24 GB RAM recommended
  • The installer (Spritz.msi) only works on Windows.

Running Spritz with commandline

Spritz will also work on the commandline within a Unix system (Linux, Mac, WSL on Windows).

Test it out! Try constructing the database for U2OS from the paper.

  1. Add SRR629563 to the SRA list.

  2. Create the Spritz workflow. Select "release-97" and "homo_sapiens."

  3. Run Spritz!

Monitor progress in the Information textbox. The final database named final/combined.spritz.snpeff.protein.withmods.xml.gz can be used to search MS/MS with MetaMorpheus to find variant peptides and proteoforms, possibly with modifications. We recommend performing 1) Calibration, 2) Global PTM Discovery (G-PTM-D), and 3) Search tasks to get the best results.

image

The final database named final/combined.spritz.snpeff.protein.fasta is generated to contain variant protein sequences, and it may be used in other search software, such as Proteome Discoverer, ProSight, and MASH Explorer.

The final database named final/combined.spritz.snpeff.protein.withdecoys.fasta is ready for use in MSFragger. It is generated to contain variant protein sequences with decoy protein sequences appended.

Citations

If you use this Spritz, please cite:

This pipeline uses the following tools:

spritz's People

Contributors

acesnik avatar bintiibrahim avatar lonelu avatar rfellers avatar rmmiller22 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

spritz's Issues

Implement advanced options for RSEM and low-RAM RSEMBowtie

Defaults are probably okay, but there are some advanced options:

    --fragment-length-min <int>
        Minimum read/insert length allowed. This is also the value for the
        Bowtie/Bowtie2 -I option. (Default: 1)

    --fragment-length-max <int>
        Maximum read/insert length allowed. This is also the value for the
        Bowtie/Bowtie 2 -X option. (Default: 1000)

    --fragment-length-mean <double>
        (single-end data only) The mean of the fragment length distribution,
        which is assumed to be a Gaussian. (Default: -1, which disables use of
        the fragment length distribution)

    --fragment-length-sd <double>
        (single-end data only) The standard deviation of the fragment length
        distribution, which is assumed to be a Gaussian. (Default: 0, which
        assumes that all fragments are of the same length, given by the
        rounded value of --fragment-length-mean)

Possible install problem of STAR

The /CMD/bin/Debug/STAR file is empty after the first time setup. (Both in Orion or LEI)
Delete the STAR directory, then setup again will install STAR successfully.
Related to STARWrapper.cs Line 184.

A bug only in LEI. a /CMD/bin/Debug/bin directory contain something in /CMD/bin/Debug/bedops are not remove somehow

Improve applying variants

Make Interval, Marker, and IntervalAndSubInterval<T> classes like SnpEff, which have nice methods for applying variants. Interval can use SequenceRange from DotNetBio, since it's already comparable. Markers, a collection of Marker objects can be SequenceRangeGrouping, a collection of SequenceRange objects that allows intersecting and such.

The key goal here is applying SNPs, MNPs, and indels in a tidy way.

Improve variant combinatorics

Limited it to 5 variants per transcript for now.

  • Make these 5 heterozygous, not just 5 variants
  • Phase nearby variants

SnpEff GRCh38 version mismatches

  1. It turns out the databases that SnpEff uses are GRCh38.86, not GRCh38.81 like I've been using. Most of the transcript IDs are probably the same, but there are likely some that changed.
  2. SnpEff includes the transcript version concatenated with a . to the transcript ID for GRCh38.86 and not for GRCh37.75
  3. This really makes me want to make the program independent of that output, like I attempted at first.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.