Ribo-seq focused (O)ligo (D)esign pipeline to (D)eplete (R)ibosomal RNA fragments
v0.9 , peer review release
The software consists of two parts, ''Ribo-ODDR'' and ''Ribo-ODDR:oligo-selector''
Ribo-ODDR : Based on given pilot sequencing data and rRNA sequences, Ribo-ODDR pipeline designs oligos complementary to rRNA sequences and computes their depleting potentials in pilot Ribo-seq data. The tool outputs all oligo designs that pass user-defined filtering criterias, which are explained in later sections. Oligo designs are reported in FASTA, BED, GFF and CSV formats, and if needed, off-target information is outputted in TXT format.
Ribo-ODDR: oligo-selector : To make browsing through oligo designs easier, we also provide Ribo-ODDR:oligo-selector, an R-Shiny app.
Prerequisites for "Ribo-ODDR" pipeline
Ribo-ODDR does NOT pre-process Ribo-seq reads coming from pilot experiments. If adapter trimming and size selection marker cleaning is required for generated data, we suggest using the cutadapt tool for such purposes.
- Python3 (>3.0)
- TopHat2 & Bowtie2 & samtools (optional) : The pipeline will use them to identify rRNA fragments, by aligning pre-processed Ribo-seq data to given rRNA sequences. However, one can use any other aligner and feed the alignment files (BAM files) to the pipeline instead. Note that preprocessed reads from pilot experiments must be aligned to the same rRNA sequences that is passed to the Ribo-ODDR pipeline and BAM files must be already indexed as (XXX.bam.bai).
- Vienna RNA Package - RNAfold : (optional) RNA folding prediction tool. The pipeline will run the RNAfold program as a sub-process if possible.
- RIsearch2 (mandatory for off-target predictions and "cross-species optimization mode") : RNA-RNA interaction prediction tool used for oligo-target interaction predictions.
How to run "Ribo-ODDR" pipeline?
There are two modes for Ribo-ODDR, "cross species optimization" and" novel oligo design". Both modes can be run using the same Ribo-ODDR.py script.
Please run the following code to get help on the arguments you can pass to this script.
To optimize oligos from one organism for Ribo-seq in another organism, cross species optimization mode should be used. Note that this mode requires the RIsearch2 program to be pre-installed. Below is an example code on how you can run Ribo-ODDR in this mode (passing "--RIsearch2_exe d" argument assumes that RIsearch2 is available by default).
cross species optimization
src/Ribo-ODDR.py -r example_data/mouse_rRNAs.fa -o example_data/ -op example_data/human_oligos.fa --RIsearch2_exe d
novel oligo design
In a simple case, if you already have the bam files ready for sample data-rRNA alignments. You can run this mode as follows. Note that "mouse_sample_1" and "mouse_sample_2" will be used as sample labels.
src/Ribo-ODDR.py -r example_data/mouse_rRNAs.fa -o example_data/ -ap ./ -as .bam -s mouse_sample_1 mouse_sample_2
If you want to use the trimmed-read files instead, you will have to use a code similar to the one below. The code below assumes that TopHat2, Bowtie2 and samtools are already installed. You can also provide the path to their executables instead of passing "d" for default.
src/Ribo-ODDR.py -r example_data/mouse_rRNAs.fa -o example_data/ -fp /PATH/PREFIX/TO/YOUR/FASTQ/FILES -as .fastq --bowtie2-build_exe d --samtools_exe d --tophat_exe -s mouse_sample_1 mouse_sample_2
computing more features
To compute self-folding characteristics, binding energy and off-target predictions for designed oligos you need the RNAfold and RIsearch2 pre-installed. When they are available by default, you can pass the "--RIsearch2_exe d --RNAfold_exe d" arguments or provide the path to their executables instead of "d". Note that, for off-target predictions, you also need to provide protein coding transcipt sequences by passing the "--OFFtargets /PATH/TO/FASTA" argument.
Prerequisites for "Ribo-ODDR: oligo-selector"
How to run "Ribo-ODDR: oligo-selector"
It is provided as an R script, which you can open in RStudio and run easily if you have the packages installed. The Shiny app self-contains the Instructions on how to navigate yourself through the app.
Ribo-ODDR was created by Faller Lab