接著上一節的內容我們今天來學習應用Biostrings做生物信息數據的模板匹配。
上一節的內容:應用Biostrings處理生物信息數據——基礎篇
本期的代碼:
1、模板匹配,在一組序列中匹配一個模板。
#生成連續7個鹼基組成的模板。
my_pattern= "TATAAAA"
#在chr22NoN 中匹配該模板,讀者可自已查看結果。
mT = matchPattern(my_pattern, chr22NoN)
#計算chr22NoN中匹配該模板的數量。
countPattern(my_pattern, chr22NoN)
#在chr22NoN中匹配該模板且允許一個錯配。
mmT = matchPattern(my_pattern, chr22NoN, max.mismatch =1)
#另一種方法計算匹配的數量,可以看到多匹配了很多。
length(mmT)
#觀察前5個匹配得到的片段中錯配鹼基所在的位置。
mismatch(my_pattern, mmT[1:5])
#左側將要匹配的模板序列。
Lpattern#右側將要匹配的模板序列。
Rpattern#用左右模板同時匹配Hsapiens$chr22,要求中間的序列長度不能超過500bp。
LRsegments#查看匹配到的前5條序列。
LRsegments[1:5]2、模板匹配,在一組序列中匹配一組模板(必須長度一樣)
#提取所有探針的序列,組成一組模板,存在對象dict。
dict#計算所有探針(序列)的數量。
length(dict)#查看探針的長度nchar(dict)有多少種,只有一種是25。
unique(nchar(dict))#查看dict的前三項內容(探針序列)。
dict[1:3]#用第一個序列在Hsapiens$chr22中的匹配,並給出匹配數
matchPattern("CACCCAGCTGGTCCTGTGGATGGGA", "Hsapiens$chr22")
3、搜索迴文結構。
#計算chr22_ pals 長度,限定間隔至少40bp。
chr22_pals#計算chr22_ _pals 長度。
nchar(chr22_pals)#查看找到的迴文結構。
chr22_pals#查看回文結構序列中的間隔長度。
palindromeArmLength(chr22_pals)#統計迴文結構中的所有基礎鹼基[ATCG]的出現次數。
ans#查看基礎鹼基的頻率。
ans
關鍵字: chr22NoN LRsegments 迴文結構