Code Monkey home page Code Monkey logo

rail's Introduction

Rail-RNA logo

is software for RNA-seq analysis.

the website.

the latest stable release. Read the

especially the

Ask questions in the repo's

Join the chat at https://gitter.im/nellore/rail .

Get interested

Rail-RNA's distinguishing features are

  • Scalability. Built on MapReduce, the software scales to analyze hundreds of RNA-seq samples at the same time.
  • Reduced redundancy. The software identifies and eliminates redundant alignment work, making the end-to-end analysis time per sample decrease for fixed computer cluster size as the number of samples increases.
  • Integrative analysis. The software borrows strength across replicates to achieve more accurate splice junction detection, especially in genomic regions with low coverage.
  • Mode agnosticism. The software integrates its own parallel abstraction layer that allows it to be run in various distributed computing environments, including the Amazon Web Services (AWS) Elastic MapReduce (EMR) service, or any distributed environment supported by IPython, including clusters using batch schedulers like PBS or SGE, Message Passing Interface (MPI), or any cluster with a shared filesystem and mutual SSH access. Alternately, Rail-RNA can be run on a single multi-core computer, without the aid of a batch system or MapReduce implementation.
  • Inexpensive cloud implementation. An EMR run on > ~100 samples costs ~ $1/sample with spot instances.
  • Secure analysis of dbGaP-protected data on EMR. See this guide for information on setup.

Outputs currently include

  • Alignment BAMs with only primary alignments by default (for more, use --bowtie2-args "-k <N>", where <N> is the maximum number of alignments to report per read)
  • Genome coverage bigWigs
  • TopHat-like indel and splice junction BEDs

and will likely expand in future versions.

Read the preprint for more details. Methods explained there correspond to Rail-RNA 0.2.3b.

Get set up

Start with a recent (>= 2009) OS X or Linux box. For a no-fuss install, enter

(INSTALLER=/var/tmp/$(cat /dev/urandom | env LC_CTYPE=C tr -cd 'a-f0-9' | head -c 32);
curl http://verve.webfactional.com/rail -o $INSTALLER; python2 $INSTALLER -m || true;
rm -f $INSTALLER)

at a Bash prompt. For a more customizable install, download install_rail-rna-0.2.3b, change to the directory containing it, and make the installer executable with

chmod +x install_rail-rna-0.2.3b

Now run

sudo ./install_rail-rna-0.2.3b

to install for all users or

./install_rail-rna-0.2.3b

to install for just you. Refer to these detailed installation instructions from the docs for more information. If the executable doesn't work, you may need Python. You'll also need Bowtie 1 and 2 indexes of the appropriate genome assembly if you will be running Rail-RNA in either its single-computer (local) or IPython Parallel (parallel) modes. The easiest way to get these is by downloading an Illumina iGenome. If running Rail-RNA on EMR (elastic mode) and aligning to hg19, the assembly can be specified at the command line with the -a parameter.

Get started

Rail-RNA takes as input a Myrna-style manifest file, which describes a set of input FASTQs that may be on the local filesystem in local and parallel modes; or on the web or Amazon Simple Storage Service (S3) in local, parallel, and elastic modes. Each line takes one of the following two forms.

  1. (for a set of unpaired input reads) <FASTQ URL>(tab)<optional MD5>(tab)<sample label>
  2. (for a set of paired input reads) <FASTQ URL 1>(tab)<optional MD5 1>(tab)<FASTQ URL 2>(tab)<optional MD5 2>(tab)<sample label>

Find some RNA-seq data, create a manifest file, run

rail-rna

and follow the instructions; or check the docs for help getting started.

To use Rail-RNA in elastic mode, you'll need an account with AWS. For an introduction to cloud computing with AWS, refer to this excellent tutorial by the Griffith Lab at Wash U.

Disclaimer

Renting AWS resources costs money, regardless of whether your run ultimately succeeds or fails. In some cases, Rail-RNA or its documentation may be partially to blame for a failed run. While we are happy to review bug reports, we do not accept responsibility for financial damage caused by these errors. Rail-RNA is provided "as is" with no warranty.

Licenses

MIT except for the directory src/hadoop/relevant-elephant, which contains Apache-licensed code adapted from the Twitter's Elephant Bird project.

Contributors

This product was developed primarily at

Hopkins logo

rail's People

Contributors

andrewejaffe avatar benlangmead avatar gitter-badger avatar lcolladotor avatar mortonjt avatar nellore avatar

Watchers

 avatar  avatar

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.