接着上一节的内容我们今天来学习应用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