800 likes | 926 Views
Searching genomes for noncoding RNA. CS374 Leticia Britos. 10/03/06. DNA to RNA, and genes. RNA: carries the “message” for “translating”, or “expressing” one gene. A. DNA, ~3x10 9 long in humans Contains ~ 22,000 genes. G. C. G. transcription. translation. easy. 2. A. 3. folding.
E N D
Searching genomes for noncoding RNA CS374 Leticia Britos 10/03/06
DNA to RNA, and genes RNA: carries the “message” for “translating”, or “expressing” one gene A DNA, ~3x109 long in humans Contains ~ 22,000 genes G C G transcription translation easy 2 A 3 folding C 1 U G
“Structural genes encode proteins and regulatory genes produce non-coding RNA” F. Jacob and J. Monod (1961)
Gene Finding Where are the genes?
Gene Finding atg Where are the genes? ggtgag cagatg ggtgag cagttg ggtgag caggcc ggtgag In humans: ~22,000 genes ~1.5% of human DNA tga
An expanding universe of noncoding RNA • rRNA(structure/function of ribosomes) • tRNA(translation) • snRNA(RNA splicing, telomere maintenance) • snoRNA(chemical modification of rRNA) • miRNA(translational regulation) • gRNA(mRNA editing) • tmRNA(degradation of defective proteins) • riboswitches (translational and transcriptional regulation) • ribozymes(autocatalytic RNA) • RNAi (gene regulation by dsRNA)
How to find ncRNAs? atg caggtg ggtgag cagatg ggtgag cagttg ggtgag caggcc ggtgag tga
introns 5 ’ 3 ’ promoter exons 3 ’ UTR 5 ’ UTR coding Riboswitches introns introns 5 5 ’ ’ 3 3 ’ ’ promoter promoter exons exons 3 3 ’ ’ UTR UTR 5 5 ’ ’ UTR UTR coding coding noncoding
Noncoding RNA signals in the genome are not as strong as the signals for protein coding genes Look for structure in evolutionary conserved sequences
Existing algorithms • CMSearch • RSEARCH • ERPIN
Example: finding 5S RNAs in a 1.6Mb genome • RSEARCH: 6.5 h • FastR: 103 s
What is a Database filter? A computational procedure that takes a DB as input and outputs a subset of it. • The object being searched for remains in the DB after filtering (sensitivity) • The filtered DB is significantly smaller • The filtering operation is fast (efficiency) filter
Problem • Given an RNA sequence with known structure, find homologous sequences in a RNA DB AGAGCGUAUCGAUUUAGAGAGCUAUAGCUAGAGAGGAGA UUAUAGCGCGCAUAUAGGACAAACAGUCUCUAUGGGGAC AUUCCGGGAACAUAGUAUAGGCGACGGAUUAGCUAGCCAA AUCGCGCUAUAGCUAGCGAGGACAGCUAUAGCUAGCGAG AUCGCGCUAUAGCUAGCGAGGACAGCUAUAGCUAGCGAG AUAUCGGGCUGUGGACACUAUACGAUCGAAUCUAGCUAU AUCGCGCUAUAGCUAGCGAGGACAGCUAUAGCUAGCGAG AUAUCGGGCUGUGGACACUAUACGAUCGAAUCUAGCUAU DB QUERY
Solution • Stage 1: filter the DB • Stage 2: align the selected sequences in the DB with the query and determine the best alignments
Filtering • Sequence alone is not sufficient • Structure alone is not sufficient
6 25 28 3 a a’ a a’ Structural features: (k,w)-stacks a a’ AUUCCGGGAACAUAGUAUAGGCGACGGAUUAGCUAGCCAA a a’
a’ a d = 18 Definition of a (k,w)-stack AUUCCGGGAACAUAGUAUAGGCGACGGAUUAGCUAGCCAA A pair of substrings of at least length k, that are at most w bases apart AUUCCGGGAACAUAGUAUAGGCGACGGAUUAGCUAGCCAA Is a,a’ : (4,18)-stack? (4,20)-stack? (4,9)-stack? (3, 20)-stack?
Use of (k,w)-stacks as filters in the search for ncRNAs If we use a (7,70)-stack filter, we eliminate 90% of the DB from consideration
6 25 28 3 16 12 14 18 Structural features: nested (k,w,l)-stacks AUUCCGGGAACAUAGUAUAGGCGACGGAUUAGCUAGCCAA
6 25 28 3 16 12 14 18 35 34 32 36 Structural features: parallel (k,w,l)-stacks AUUCCGGGAACAUAGUAUAGGCGACGGAUUAGCUAGCCAA
Filtering criteria nested stacks Parallel stacks Multiloop stacks
Filtering algorithm 1. Build a hash table of kmers in the DB k=4 AUUCCGGGAACAUAUUCUAGGCGACGGAUUAGAAUGCCAA kmer index AUUC 1
UUCC 2 Filtering algorithm 1. Build a hash table of kmers in the DB k=4 AUUCCGGGAACAUAUUCUAGGCGACGGAUUAGAAUGCCAA kmer index AUUC 1
UUCC 2 Filtering algorithm 1. Build a hash table of kmers in the DB k=4 AUUCCGGGAACAUAUUCUAGGCGACGGAUUAGAAUGCCAA kmer index AUUC 1 UUCG 3
UUCC 2 Filtering algorithm 1. Build a hash table of kmers in the DB k=4 AUUCCGGGAACAUAUUCUAGGCGACGGAUUAGAAUGCCAA kmer index AUUC 1 UUCG 3 CCGG 4
UUCC 2 Filtering algorithm 1. Build a hash table of kmers in the DB k=4 AUUCCGGGAACAUAUUCUAGGCGACGGAUUAGAAUGCCAA kmer index AUUC 1 14 UUCG 3 CCGG 4
UUCC 2 Filtering algorithm 2. Identify (k,w)-stacks k=4 AUUCCGGGAACAUAUUCUAGGCGACGGAUUAGAAUGCCAA kmer index AUUC 1 14 reverse complement UUCG 3 CCGG 4 n GAAU
UUCC 2 Filtering algorithm 2. Identify (k,w)-stacks d w? k=4 AUUCCGGGAACAUAUUCUAGGCGACGGAUUAGAAUGCCAA kmer index AUUC 1 14 reverse complement UUCG 3 CCGG 4 n GAAU
Filtering algorithm 3. Compute complex stacks using DP nested parallel multiloop
Result of stage 1 (filtering) AGAGCGUAUCGAUUUAGAGAGCUAUAGCUAGAGAGGAGA UUAUAGCGCGCAUAUAGGACAAACAGUCUCUAUGGGGAC AUUCCGGGAACAUAGUAUAGGCGACGGAUUAGCUAGCCA AUCGCGCUAUAGCUAGCGAGGACAGCUAUAGCUAGCGAG AUAUCGGGCUGUGGACACUAUACGAUCGAAUCUAGCUAU AUCGCGCUAUAGCUAGCGAGGACAGCUAUAGCUAGCGAG AUAUCGGGCUGUGGACACUAUACGAUCGAAUCUAGCUAU
Solution • Stage 1: filter the DB • Stage 2: align the selected sequences in the DB with the query and determine the best alignments
Possible ways to align RNAs • sequence to sequence • structure to structure • sequence to structure
RNA sequence structure alignment AGAGCGUAUCGAUUUAGAGAGCUAUAGCUAGAGAGGAGA DB (filtered) UUAUAGCGCGCAUAUAGGACAAACAGUCUCUAUGGGGAC t [1,……………………………………………………..n] Query s [1,……………………………………………………..m] S (set of base pairings)
The secondary structure of the query is represented by a binarized tree Rule 1: when i and j are paired i - j i +1 j -1 i j
The secondary structure of the query is represented by a binarized tree Rule 2: when j is unpaired j -1 i j
The secondary structure of the query is represented by a binarized tree Rule 3: when j is paired but not to the left-most base k k -1 i j
The secondary structure of the query is represented by a binarized tree i j
The secondary structure of the query is represented by a binarized tree
The secondary structure of the query is represented by a binarized tree
The secondary structure of the query is represented by a binarized tree
The secondary structure of the query is represented by a binarized tree