Package: orfeus
ORFeus is an ORF prediction tool designed to detect alternative translation
events, including programmed ribosomal frameshifts, stop codon readthrough, and
short upstream or downstream ORFs. It requires aligned ribosome profiling
(ribo-seq) reads, reference transcript annotations, and a reference genome.
ORFeus can be run on both bacterial and eukaryotic data.Note that high-resolution (even nucleotide-resolution) ribosome profiling data
is ideal. The higher-resolution the data and the deeper the sequencing, the
better predictions ORFeus will make.Quick Startorfeusbuild forward.wig reverse.wig genome.fa annotations.gtf
orfeusrun data.txt.gz parameters_h1.npy parameters_h0.npyOverviewORFeus requires the following input files. (Seeinput filesfor
details on preparing these to work with ORFeus, particularly the aligned
ribo-seq reads file.)Aligned ribo-seq read counts (format: wiggle or bedgraph)Transcript annotations (format: gtf or gff)Genome (format: fasta)Reasons to use ORFeus:You are interested in finding alternative translation events in an
annotated species. (Run ORFeus and look at the top predictions.)You want to find changes in translation across multiple conditions or
timepoints. (Run ORFeus separately on ribo-seq data from each condition and
compare predictions.)Reasons not to use ORFeus:You need ade novoORF caller for a novel genome. (ORFeus requires input
transcript annotations.)You don't have high-resolution ribo-seq data. (ORFeus infers translation
based on ribosome profiling reads.)ORFeus can predict the following types of canonical and alternative ORFs:DependenciesNumpyPandasScipyMatplotlibWe recommend installingAnaconda, which is a
Python distribution that comes with all of these packages.InstallationInstall from sourcegit clone https://github.com/morichardson/ORFeusInput filesTranscript annotationsThe annotations file must be inGTF or GFF
format.
At minimum, the annotations file must contain the following columns
(placeholder columns are not used by ORFeus and can be populated with any value,
though the standard is.):seqname: name of the chromosome (note this must match exactly theseqnamein the genome sequence file)source: placeholderfeature: feature type (note onlyfive_prime_utr,exon, andthree_prime_utrfeatures will be kept)start: first position of the feature, 1-indexedend: last position of the feature, 1-indexedscore: placeholderstrand: + (forward) or - (reverse)frame: placeholderattribute: semicolon-separated list with additional information (note only the info below will be kept)transcript_idtranscript_nametranscript_biotype(note only"protein_coding"features will be kept)Below is an example transcript from a GTF file that meets the minimum
requirements. All placeholder fields have been populated with a period.V	.	five_prime_utr	546794	546816	.	+	.	transcript_id "YER178W_mRNA"; transcript_name "PDA1"; transcript_biotype "protein_coding";
V	.	exon	        546817	548079	.	+	.	transcript_id "YER178W_mRNA"; transcript_name "PDA1"; transcript_biotype "protein_coding";
V	.	three_prime_utr	548080	548208	.	+	.	transcript_id "YER178W_mRNA"; transcript_name "PDA1"; transcript_biotype "protein_coding";Genome sequenceThe genome sequence file must be inFASTA format. There should
be one sequence entry for each uniqueseqname(chromosome) in the annotations
file.Below is an example FASTA file excerpt for the chromosome of the above
example transcript. Note that theseqnamematches theseqnamecolumn entries
in the annotations example.>V dna:chromosome chromosome:R64-1-1:V:1:576874:1 REF
CGTCTCCTCCAAGCCCTGTTGTCTCTTACCCGGATGTTCAACCAAAAGCTACTTACTACC
TTTATTTTATGTTTACTTTTTATAGATTGTCTTTTTATCCTACTCTTTCCCACTTGTCTC
TCGCTACTGCCGTGCAACAAACACTAAATCAAAACAGTGAAATACTACTACATCAAAACG
CATATTCCCTAGAAAAAAAAATTTCTTACAATATACTATACTACACAATACATAATCACT
...Aligned ribo-seq read countsThe final aligned ribo-seq read counts must be in eitherWIG formatorBedGraph format.
The raw reads must be aligned and then the read ends should be offset to
correspond to the P-site of the ribosome. The count of read ends at each
position of the genome should be stored, with one file for the forward strand
and one for the reverse strand.Align raw reads to genomeAlign raw ribo-seq reads to the genome. Filter out reads mapping to annotated
ncRNA sequences. You should decide whether uniqely-mapping or multi-mapping
is appropriate for your data set.Uniquely-mapping reads:filters out reads that map to repetitive regions (e.g. regions with repeated
sequences may appear as gaps in the read density,
even though they may actually be translated)filters out reads that map to similar or related sequences (e.g. insertion
sequences that have multiple copies in the genome will have no reads,
even though they may actually be translated)Multi-mapping reads:generates confounding signals from mis-mapped multi-mapping reads
(e.g. reads that were actually generated from one transcript also map to
another transcript, adding noise)complicates interpretation of predictions (e.g. predictions of alternative
events may be due to reads from that transcript or another transcript)In some cases, you may want to run ORFeus twice:
once on the uniquely-mapped reads and once on the multi-mapped reads. This
will allow you to compare the predictions and determine which events
may be artifacts of read mapping. Any predictions that differ between the two
runs should be examined more closely, since they might arise from mapping
artifacts.Offset aligned reads to P-siteBefore passing the data to ORFeus, you need to offset the read ends so they
align to a position within the P-site of the ribosome. This lets ORFeus infer
the exact codon being translated for each read.You can determine the offset for each read length and export the resulting read
counts using existing software packages likeShoelacesor using your
own custom scripts.Usage