生信慕課-序列比較筆記


來自:中國大學mooc-山東大學 生物信息學 課程

1.什么是序列?

序列就是字符串。

s就是一個序列。(原來序列是這么簡單的,聽着太高大上了)

蛋白質序列:由20個不同的字母(氨基酸)排列組合而成。

核酸序列:由4個不同的字母(鹼基,ATCGU)排列組合而成,包括DNA序列和RNA序列。

FASTA格式:第一行>表示注釋;第二行及以后:每行60個字母或80,不一定。

 

圖1.數據格式

2.序列相似性

圖2.相似比較

圖中顯示了序列的相似性比較,對於序列長度是非常非常長的,肉眼根本無法識別,所以就需要技術來進行識別。

 那么有序列一致度identity與相似度similarity兩個概念:

圖3.一致度和相似度定義

圖4.例子

 那么這兩個序列的一致度就是50%,很好計算。

但是相似度是怎么計算的呢?哪個殘基和哪個殘基算作相似

答:殘基兩兩相似關系被  替換積分矩陣 所定義。

圖5.蛋白質替換積分矩陣長這個樣子

 3.替換記分矩陣

 描述了殘基兩兩相似性的量化關系。

圖6.DNA

 3.1 3種常見的DNA替分矩陣:

①等價矩陣:相同為1,不同為0.

②轉換-顛換矩陣:核算鹼基按照環結構被划分為兩類,嘌呤(腺嘌呤A,鳥嘌呤G)有兩個環;嘧啶(胞嘧啶C、胸腺嘧啶T)有一個環。如果DNA替換保持環數不變則是轉換,比如嘌呤與嘌呤之間的轉換;如果環數發生變化那么就是顛換,比如嘌呤和嘧啶之間的替換。

③BLAST矩陣:就是根據經驗得到,沒有為什么。

三種如下圖:

3.2 3中常見的蛋白質序列的替換計分矩陣:

等價矩陣:與DNA替換等價。

PAM矩陣:基於進化原理。如果兩種氨基酸替換頻率高,那么就代表自然界易接受這種替換,替換得分就相應高。

PAM矩陣中,后邊的數越小,表示親緣關系越近;越大表示親緣關系越遠。PAM-1是基於相似度>85%的序列計算產生的。更多的PAM-259是PAM-1多次自乘得到的。

BLOSUM矩陣:它是根據真實數據得到的,BLOSUM-80是由一致度>=80%得到的。后邊的數越大,表示親緣關系越近;越小,表示親緣關系越遠。

這個圖很好的說明了。氨基酸差異合BLOSUM矩陣是互補的。但是PAM矩陣中由於連乘是有差異的,在PAM后面的數字和氨基酸差異度。

那么是選PAM還是BLOSUM呢? 

如果不確定的話,一般選:BLOSUM-62是沒問題的。

對於親緣關系較遠的比對,由於PAM-250是計算得到的,准確度有限制,BLOSUM-45更有優勢;對於親緣關系較近的比較,兩者差別不大。 

 3.3其他2個替換計分矩陣

1.遺傳密碼矩陣:通過計算一個氨基酸轉換成另一個氨基酸所需的 密碼子變化數目 得到。如果變化一個鹼基就能使一個氨基酸的密碼子轉換為另一個氨基酸的密碼子,那么代價就是1,以此類推。得到的最終矩陣一般都是1和2。

2.疏水矩陣:根據氨基酸替換前后疏水性的變化得到計分矩陣。

如果一次替換導致蛋白質疏水特性不發生較大改變,則替換得分高,否則分低。

矩陣物理意義明確,有一定理化性質依據,適用於偏蛋白質功能方面的序列比對。

 4.計算相同長度的序列相似度

 還是對那個例子來說:

 那么它的一致度為:2/4=50%.

那么相似度如何計算?根據查表得到(得分>=0就是相似的),L和I之間是相似的,K和L是不相似的,那么=(2+1)/4=75%.

 但是兩個序列長度不同的怎么替換呢?(覺得這個問題還挺有趣的,應該就是通過dp計算最大子串長度吧。)

 ——到目前為止覺得這些東西還都比較簡單。

 5.序列比較法

 5.1 打點比較

從圖中可以發現,打點打出了一條主對角線。那么連續的對角線及與對角線平行的代表序列中相同的區域。

 還可以對一條序列自己打點,那么肯定是一個對稱矩陣,在縱向或者橫向與主對角線平行的短平行線對應的序列片段就是重復的部分

 比如對:這個序列得到:

那么重復出現了3次,包括主對角線在內的重復的個數就是重復總個數。

通過這種方法就可以發現串聯重復序列,如下圖:

 *這里講解時提到了,孟德爾共顯性遺傳規律,所以去百度百科了解了一下:

(我居然是這個詞條第一個點贊的人也)

共顯性遺傳是指一對等位基因之間,沒有顯性和隱性的區別,在雜合子個體中兩種基因的作用都能表現出來。比如ABO型血。

6.序列比較法 

這個圖解非常不錯,理解了這個算法,向左上表示當前字符與字符對比;向左表示序列P當前字符與空格對比;向上表示序列序列q與空格對比。

最后在最后一個部分回溯即可。

關於回溯最有比對序列,圖里給出了不錯的解釋,理解了之后記住這三個箭頭的含義即可。

這里給出了全局比對和局部比對,理解了為什么要有局部比對。

對於長度不同的序列來說,如果都使用全局比對,比如途中的兩個比對,很明顯比對結果和想要的並不是一個,而應該是第一個效果好,所以出現了局部比對。

對於局部比對算法,只比全局比對多了個最大值限定為0,在接下來的例子中能夠反映出這個0,需要注意的是,一開始矩陣的第0行和第0列都會被初始化為0,這是和全局比對算法不同的。

這個基本過程是和全局比對相似的,只不過在追溯最優比對序列時,不是從右下角追溯到左上角,而是選擇矩陣中的最大值開始追溯,追溯到沒有箭頭為止。

那么又回到了這個問題,就是如何計算長度不同的序列的相似度?

從圖中可以很清晰的了解,長度不同時使用的是全局比對,而不是局部比對。

總的來說就是圖中最后一句,不論長度是否相同都要做序列全局比對。

7. 在線序列對比工具

7.1全局比對工具

選擇蛋白質比對,輸入以下數據:

得到比對結果:

那么在計算一致度時就計算|的個數,相似度是計算.的個數,依次這樣計算。下面會介紹使用參數:

第一個就是替換積分矩陣了,GAP OPEN是出現第一個空位的罰分,GAP EXTEND是延后罰分。

第一次比對設置為10 0.5,第二次比對設置為1 5.

設置這兩個參數后得到的比對結果是大不相同的。如下:

第一次比對結果中,有較長的空位出現,因為空位延申罰分低;第二次結果中,除了開頭部分,空位都是分散出現,因為連續空位代價高。

 有一個例題:

有一句話特別明顯:“用其中已知結構的序列做模板,來預測另一個序列的結構”。那么就是采用分散空位了。

另一個例子是知道比對的序列絕大多數是相似的,但是其中的一個功能區在另一條序列中是缺失的,想通過序列比對將功能區找到,怎么設置gap open和gap extent呢?

 7.2局部比對工具

 

默認參數局部比對結果,可以看出序列一中頭部不同的部分紅色標注在局部比對中被去掉;在序列2中最后的被去掉。

這些對不上的在全局比對中是對空位的。

下面是對新一組數據進行全局與局部比對的結果:

局部比對時將空位open和gap延申都設置為較大:10 5,使盡可能相似的部分出現。

在全局比對中可以看出只有前一段中比對結果較好,后邊均較差。

 8.BLAST搜索

 BLAST是Basic Local Alignment Search Tool的縮寫。

它的基本原理是片段對的概念。片段對就是兩個給定序列中的子序列,長度相等,並且無空位完全匹配。

首先找出探測序列和目標序列間所有匹配程度超過一定閾值的序列片段對,然后根據相似性進行延伸,得到相似性片段,最后給出高分值片段對(HPS,high-scoring pairs)。

前兩種是比較常用的,后三種是對於新發現的序列吧,看它們對應的蛋白質。下圖是更好的一個介紹的過程。

例題:要在核酸數據庫查詢一段與某DNA序列編碼蛋白質最相似的序列,應選擇:肯定是最后一個了tBLASTx。

 NCBI上的BLAST比對算法:

線條顏色和位置分別表示匹配度和匹配位置,另有一個來源表:

其中Ident為一致度,BLAST為了速度犧牲掉了一定的准確度,但是對於親緣關系近的序列並沒有太大的影響,但是對於遠親就不又好了可能丟失。

解決辦法是PSI-BLAST:Postion-Specific Iterated BLAST。

位置特異權重矩陣,搜索一遍數據庫后,統計一個多序列比對中,每一個位置上不同殘基出現的百分比,

 

PSSM:比如給出的四條序列,現在找到了這4條是相似的,那么得到的矩陣如下,在下一次比對中,和B是朋友的也會被計算進來,比如C也會被計算進來。

PHI-BLAST(Pattern-Hit Initiated)精准搜索:能找到與輸入序列相似的符合某種特定模式(Pattern)的序列。

 比如舉個例子:

就是用個正則表達式找出這一類唄。那么這個序列有什么生物學含義呢?

->

在正則表達式中:{}表示除...以外,[..]在..之中,x代表任意字母,(x,y)表示x-y個()之前的字符。【這個正則表達式我看見時居然沒有主動去思考,真是錯誤。】

那么這里里邊的含義就是再接3-7個任意字母。

 最后的Smart BLAST,操作最簡潔,最終返回與待測序列最相近的三個序列,

給出最相近的物種並根據其可得到進化關系的推斷。

還有其他的BLAST算法,以及他們的適用情況。

9.多序列比對

兩條以上的序列進行的全局比對。

要求如上↑

10.從頭測序

 

對一個從未見過的生物的基因組的測序。(這里說的是測出來序之后如何存儲吧!畢竟是一個大數據問題,如何存儲才能更節省空間更高效?)

第一個重疊圖,不太明白是什么意思,圖也沒有看懂。

第二個圖是DB圖,這個是將一個reads分稱kmer個,每個之間都有k-1個overlap,在使用哈希表,鍵值表示出現次數,那么這樣就可以降低數據存儲量,只要找到歐拉路就是一個可能的reads。兩個點之間存在邊即kmer之間存在k-1個overlap。

這個DB的缺點是不能反映出原始結構吧。

但是也有一個很大的問題,就是基因組中一般都有很高的dulpication,人體基因組中有50%左右的重復區域或者說是高度相似。那么這樣DB中就會有很多出度入度,不便存儲,這是二代測序中存在的問題。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM