Charpter 10 Sequence Pattern 模式匹配
Sequence Pattern序列模式:A sequence pattern is a sequence of bases described by certain rules.根據(jù)已有的序列模式來(lái)尋找看似雜亂無(wú)章的序列中是否有符合你目標(biāo)的序列。
1. 正則表達(dá)式 Regular Expression
一個(gè)能在線查看你的正則表達(dá)式是否正確匹配目標(biāo)詞句的實(shí)用網(wǎng)站推薦:RegExr
正則表達(dá)式:用來(lái)匹配某個(gè)字符串的特征模板。在多門計(jì)算機(jī)語(yǔ)言中都可通用。
-
元字符metacharacter:
.
-
*
:注意貪婪法則,從匹配最多次開(kāi)始 +
-
?
:從最少次開(kāi)始往后匹配 {min,max}
-
(a)(b)\2\1
:反向引用 -
|
:擇一匹配 -
\w \d \s \S \D \W \t \r \n -b $
&'...` - `^ $
egrep 命令常用參數(shù)
egrep 為拓展的grep 支持的元字符較多
-v 反向匹配
-c 計(jì)數(shù)
-e 匹配多個(gè)模式
-w 匹配整個(gè)單詞
-n 輸出表明行號(hào)
-i 忽略大小寫
-A -B 同時(shí)輸出后前幾行
2. K-mers
K-mer:指一個(gè)長(zhǎng)的字符串中所有 長(zhǎng)度為K的子字符串。
K-mer用途:
- 糾錯(cuò):稀有少見(jiàn)的K-mer可能是測(cè)序錯(cuò)誤
- 分類:certain k-mer may uniquely identify genomes.基因組中特意的k-mers可以區(qū)分不同的物種
- Psudo-alignment:對(duì)參考基因建立Kmers的索引,然后通過(guò)將測(cè)序的reads的K-mer和參考基因的K-mer索引比較猿推,從而對(duì)基因進(jìn)行定量。
使用jellyfish來(lái)統(tǒng)計(jì)k-mers
# Get some sequence data.
efetch -id KU182908 -db nucleotide -format fasta > KU182908.fa
# Count the k-mers up to size 10.
jellyfish count -C -m 10 -s10M KU182908.fa
# Show a histogram of k-mers.
jellyfish histo mer_counts.jf
# The k-mers present at least 7 times.
jellyfish dump -L 7 mer_counts.jf
另外可用k-mer估算估算基因組捌肴,屬于基因組survey中的一部分蹬叭,雜合率/重復(fù)率/基因組大小
二代數(shù)據(jù)組裝基因組——徐州更
Charpter 11 Sequence Alignments 序列聯(lián)配
Sequence alignment(pairwise alignment): means arranging two sequences so that regions of their similarity line up.
聯(lián)配的表示方法:
- 通常表示
-
-
: 表示gap -
|
:表示比對(duì)上 - '.' :表示錯(cuò)配,可能是位點(diǎn)突變導(dǎo)致
-
- 機(jī)器表示CIGAR位于SAM的第六行:4M3D3M1X2M1X1M2D
- M match
- D deletion
- X mismatch
序列聯(lián)配的打分
根據(jù)不同的聯(lián)配情況進(jìn)行打分状知,匹配上5分秽五,匹配錯(cuò)-4分,gap -10分饥悴,延續(xù)gap多扣0.5
全局比對(duì) global alignments
在線全局比對(duì)網(wǎng)站:NEEDLE
全局比對(duì)盡可能保證兩條序列的每個(gè)堿基都能匹對(duì)筝蚕,不會(huì)對(duì)序列的兩端gap進(jìn)行懲罰
局部比對(duì) local alignment
局部比對(duì)是盡可能找到那些子區(qū)域是最優(yōu)的聯(lián)配,然后按照得分矩陣铺坞,產(chǎn)生分?jǐn)?shù)在閾值之內(nèi)的比對(duì)結(jié)果起宽。
在線局部比對(duì)網(wǎng)站Water
Alignment reliability depends on the information content of the aligned sequence itself. Alignments that include low complexity regions are typically less reliable. Additional analysis is typically needed to confirm these results.
多序列比對(duì)
mafft比對(duì),其多序列比對(duì)效果要高于clustalX和muscle
mafft --auto in.fa >out_aln.fa