你知道什麼叫做BLAST嗎

2021-02-14 生信媛
Basic local alignment search tool (BLAST)            

我第一次聽說BLAST是在大二的結束的那個暑假。我不知道BLAST是幹嘛的,但是當自己在NCBI上輸入一些序列之後,點擊確定,過了幾分鐘跳出一頁常常的結果時,感覺自己突然就很厲害了。

這就是傳說中的好用的工具,你不需要知道他是什麼原理,你只要隨便敲敲,隨便摸索一下,就能學會使用了,而且結果還符合自己的需要。

關於BLAST的教程,其實在連載系列Biostar: 課程11、12 中就介紹過了,內容都其實差不多,其實還比我更全面,但是沒辦法,我的排版好看呀。

Search may take place in nucleotide and/or protein space or translated spaces where nucleotides are translated into proteins.

Searches may implement search 「strategies」: optimizations to a certain task. Different search strategies will return different alignments.

Searches use alignments that rely on scoring matrices

Searches may be customized with many additional parameters. BLAST has many subtle functions that most users never need.

用makeblastdb為BLAST提供資料庫

選擇blast工具,blastn,blastp

運行工具,有必要的還可以對輸出結果進行修飾

第一步:建立檢索所需資料庫

BLAST資料庫分為兩類,核酸資料庫和胺基酸資料庫,可以用makeblastbd創建。可以用help參數簡單看下說明。

$ makeblastdb -helpUSAGE  makeblastdb [-h] [-help] [-in input_file] [-input_type type]    -dbtype molecule_type [-title database_title] [-parse_seqids]    [-hash_index] [-mask_data mask_data_files] [-mask_id mask_algo_ids]    [-mask_desc mask_algo_descriptions] [-gi_mask]    [-gi_mask_name gi_based_mask_names] [-out database_name]    [-max_file_sz number_of_bytes] [-logfile File_Name] [-taxid TaxID]    [-taxid_map TaxIDMapFile] [-version]-dbtype <String, `nucl', `prot'>

具體以擬南芥基因組作為案例,介紹使用方法:
: 擬南芥的基因組可以在TAIR上下在,也可在ensemblgenomes下載。後者還可以下載其他植物的基因組

# 下載基因組wget ftp://ftp.ensemblgenomes.org/pub/plants/release-36/fasta/arabidopsis_thaliana/dna/Arabidopsis_thaliana.TAIR10.dna.toplevel.fa.gzgzip -d Arabidopsis_thaliana.TAIR10.dna.toplevel.fa.gz# 構建核酸BLAST資料庫makeblastdb -in Arabidopsis_thaliana.TAIR10.dna.toplevel.fa -dbtype nucl -out TAIR10 -parse_seqids# 下載擬南芥protein數據wget ftp://ftp.ensemblgenomes.org/pub/plants/release-36/fasta/arabidopsis_thaliana/pep/Arabidopsis_thaliana.TAIR10.pep.all.fa.gz# 構建蛋白BLAST資料庫gzip -dArabidopsis_thaliana.TAIR10.pep.all.fa.gzmakeblastdb -in  Arabidopsis_thaliana.TAIR10.pep.all.fa -dbtype prot -out TAIR10 -parse_seqids

如果你從NCBI或者其他渠道下載了格式化過的資料庫,那麼可以用blastdbcmd去檢索blast資料庫,參數很多,常用就如下幾個

db string :  string表示資料庫所在路徑

dbtype string,: string在(guess, nucl, prot)中選擇一個

檢索相關參數

輸出格式 -outfmt %f %s %a %g …默認是%f

out 輸出文件

show_blastdb_search_path: blast檢索資料庫路徑

使用案例

# 查看信息blastdbcmd -db TAIR10 -dbtype nucl -info# 所有數據blastdbcmd -db TAIR10 -dbtype nucl -entry all | head# 具體關鍵字,如GI號blastdbcmd -db TAIR10 -dbtype nucl -entry 3 | head

還有其他有意思的參數,可以看幫助文件了解

第二步:選擇blast工具

根據不同的需求,比如說你用的序列是胺基酸還是核苷酸,你要查找的數據是核甘酸還是幹計算,選擇合適的blast工具。不同需求的對應關係可以見下圖(來自biostars handbook)

不同工具的應用範圍雖然不同,但是基本參數都是一致的,學會blastn,基本上其他諸如blastp,blastx也都會了。

blastn的使用參數很多blastn [-h],但是比較常用是如下幾個

-db : 資料庫在本地的位置,或者是NCBI上資料庫的類型,如 -db nr

-query: 檢索文件

-query_loc : 指定檢索的位置

-strand: 搜索正義鏈還是反義鏈,還是都要

out : 輸出文件

-remote: 可以用NCBI的遠程資料庫, 一般與 -db nr

-evalue 科學計數法,比如說1e3,定義期望值閾值。E值表明在隨機的情況下,其它序列與目標序列相似度要大於這條顯示的序列的可能性。 與S值有關,S值表示兩序列的同源性,分值越高表明它們之間相似的程度越大

E值總結: 1.E值適合於有一定長度,而且複雜度不能太低的序列。2. 當E值小於10-5時,表明兩序列有較高的同源性,而不是因為計算錯誤。3. 當E值小於10-6時,表時兩序列的同源性非常高,幾乎沒有必要再做確認。

聯配計分相關參數: -gapopen,打開gap的代價;-gapextend, gap延伸的代價;-penalty:核算錯配的懲罰; -reward, 核酸正確匹配的獎勵;

結果過濾:-perc_identity, 根據相似度

BLAST還提供一個task參數,感覺很有用的樣子,好像會針對任務進行優化速度。

第三步:運行blast,調整輸出格式。

我隨機找了一段序列進行檢索

echo '>test' > query.fa echo TGAAAGCAAGAAGAGCGTTTGGTGGTTTCTTAACAAATCATTGCAACTCCACAAGGCGCCTGTAATAGACAGCTTGTGCATGGAACTTGGTCCACAGTGCCCTACCACTGATGATGTTGATATCGGAAAGTGGGTTGCAAAAGCTGTTGATTGTTTGGTGATGACGCTAACAATCAAGCTCCTCTGGT >> query.fa

用的是blastn 檢索核酸資料庫。最簡單的用法就是提供資料庫所在位置和需要檢索的序列文件

blastn -db BLAST/TAIR10 -query query.fa# 還可以指定檢索序列的位置blastn -db BLAST/TAIR10 -query query.fa  -query_loc 20-100# 或者使用遠程資料庫blastn -db nr -remote -query query.fa blastn -db nt -remote -query query.fa

以上是默認輸出,blast的-outfmt選項提供個性化的選擇。一共有18個選擇,默認是0。
    0 = Pairwise,
    1 = Query-anchored showing identities,
    2 = Query-anchored no identities,
    3 = Flat query-anchored showing identities,
    4 = Flat query-anchored no identities,
    5 = BLAST XML,
    6 = Tabular,
    7 = Tabular with comment lines,
    8 = Seqalign (Text ASN.1),
    9 = Seqalign (Binary ASN.1),
   10 = Comma-separated values,
   11 = BLAST archive (ASN.1),
   12 = Seqalign (JSON),
   13 = Multiple-file BLAST JSON,
   14 = Multiple-file BLAST XML2,
   15 = Single-file BLAST JSON,
   16 = Single-file BLAST XML2,
   17 = Sequence Alignment/Map (SAM),
   18 = Organism Report
其中6,7,10,17可以自定輸出格式。默認是

qaccver saccver pident length mismatch gapopen qstart qend sstart send evalue bitscore

簡寫含義qaccver查詢的AC版本(與此類似的還有qseqid,qgi,qacc,與序列命名有關)saccver目標的AC版本(於此類似的還有sseqid,sallseqid,sgi,sacc,sallacc,也是序列命名相關)pident完全匹配百分比 (響應的nident則是匹配數)length聯配長度(另外slen表示查詢序列總長度,qlen表示目標序列總長度)mismatch錯配數目gapopengap的數目qstart查詢序列起始qstart查詢序列結束sstart目標序列起始send目標序列結束evalue期望值bitscoreBit得分score原始得分

AC: accession

以格式7為實例進行輸出,並且對在線資料庫進行檢索

blastn -task blastn -remote -db nr -query query.fa  -outfmt 7 -out query.txthead -n 15 query.txt


PS: 這是一篇欠了我師兄好久的教程,現在終於補上了

更多更全的內容點擊原文連結,看看biostars handbook系列。

相關焦點

  • Blast from the Past
    Helen: And today’s expression is used to talk about memories… Jean: 和記憶回憶有關嗎?是什麼樣的回憶呢? Helen: Well, often, the kind of memories you』ve forgotten about!
  • 你知道什麼叫做「菠蘿」嗎?
    菠蘿,很多人都不知道它。下面讓我來為你們介紹一下「什麼叫做菠蘿」吧。菠蘿的英文名叫做「Pineapple」,它是熱帶水果之一。現中國廣東一帶菠蘿盛產產地多為為湛江和廣西,在湛江市和安鎮我們稱之為「地菠蘿」、「紅土地菠蘿」。
  • 「a blast」是什麼情況?
    剛才玩得真開心That was a blast.我只想說 和你在一起的每一天Can I just say,every day I spend with you都像是一場冒險feels like an adventure.
  • 希望你能練就我一樣的「英語閱讀」能力:A blast rocked the city
    希望你能練就像我一樣的「英語閱讀」能力:A blast rocked the city這是兩篇內容完全一樣但用詞不同的「原版英語」。現在的問題來了:我把這篇「原版英語」交給你,你打算「怎麼讀」,你的「英語閱讀」才是讓你這個始終處於「非英語語言環境」下的學習者的英語得到最大化的有效訓練和提高?說得更具體一些,你是打算「讀」它來「學」英語,還是「用」英語(遣詞造句)?
  • 你知道什麼叫做『奶頭樂』理論嗎?
    奶頭樂你知道什麼叫做『奶頭樂』理論嗎?可能你對『奶頭樂』這三個字很陌生,但『二八定律』你應該或多或少聽說過吧。先別著急反駁,先捫心自問,難道不對嗎?這個世界,就是如此的殘酷。個人努力在財富積累過程中,佔據較大的作用,但是,一個人能積累多少財富,更多的是和上一代積累的資源有關,其餘便是社會發展所帶來的機會和紅利有關。都說這個時代,寒門再難出貴子,其實這確如此。
  • 是時候讓你知道什麼叫做真正的騎馬了!
    是這樣的嗎?或者是這樣的?或者高端一些,像這樣的?當然,最有可能是這樣的!好了!是時候讓你知道什麼叫做真正的騎馬了!你還敢說你會騎馬嗎?或者甚至一顆渴望學習騎馬的心都已經掉進了冰窟窿!別著急,看看下面這個項目,或許你會對學習騎馬重燃激情!↑新疆代表團選手表演姑娘追。
  • 八字過硬是什麼意思 什麼叫做八字過硬你造嗎?
    八字過硬是什麼意思 什麼叫做八字過硬你造嗎?時間:2020-12-07 18:38   來源:今日頭條   責任編輯:沫朵 川北在線核心提示:原標題:八字過硬是什麼意思 什麼叫做八字過硬你造嗎? 八字過硬是什麼意思 這些你知道嗎?
  • NCBI在線BLAST用法詳解
    基本步驟如下:1,進入在線blast界面,可以選擇blast特定的物種(如下)。不同的blast程序上面已經有了介紹。這裡以常用的Blast 中nucleotide blast作為例子。關於資料庫的說明請看NCBI在線blast資料庫的簡要說明。其他選項不是必選的,如Job Title就是這次比對的名字,隨便起一個即可;Organism為物種,可以填入你想比對的物種(分類單元如green plant等)的名字(拉丁名字,輸入幾個字母後會出現索引的)。第一個直接填入框中,往後需要點擊一下加號後才能繼續添加,選擇Exclude就是與這些物種以外的物種序列進行比對。
  • Ultimate Ears Blast揚聲器測評,外觀時尚的無線揚聲器
    你希望兩者的音質都能提高,但是我可以看到UE將更容易從更大的Megablast中獲取更好的聲音。 兩者都是完全防水的,具有IP67防護等級,使其能夠浸入液體中達1米長達30分鐘。換句話說,他們既是浴室又是池畔友好的。它們的Wi-Fi範圍為330英尺,藍牙範圍為150英尺。Blast的電池壽命長達12小時,Megablast的電池壽命長達16小時。
  • 12 people injured in cinema blast in Karachi of Pakistan
    ISLAMABAD -- At least 12 people were injured when a blast ripped through a cinema in Pakistan's southern port city of Karachi on Sunday night, according to police.
  • blast off
    文中的blast off 的意思是"發射、升空"、"點火起飛"。如:The spaceship blasted off.(宇宙飛船發射升天了。)此外,lift off 也可表示(飛彈、火箭等的)發射。(中國日報網站編)
  • 美國習慣用語 Day~287 | blow-out; bash; wing-ding; blast
    可能有人會說Bash這個詞的意思不是"猛擊","痛打"嗎?不錯,但是它還可以指宴會,聚會。讓我們聽一個例子,來體會Bash指的是甚麼樣的宴會。很多人都知道blast這個詞通常解釋"爆炸",或者突發的一陣大風,或者喇叭的鬧聲,也許這就是為什麼blast特別用來指喧鬧歡樂的聚會。 下面我們要聽一個人回憶他去俱樂部參加的一次舞會。舞會上以最大的音量放搖滾樂唱片,直到清晨四點。好,我們一起來聽一個參加者的感想,同時體會一下blast是甚麼樣的聚會活動。
  • 搞笑圖集:今天讓你知道什麼叫做千杯不倒,萬杯不醉!
    1、技術槓槓的,輕拿輕放,技術不簡單2、2萬大洋剛買的紫砂壺發個朋友圈3、小姐,你是已經好幾天沒吃東西了嗎?4、這是喝了多少,暈乎乎的5、飯前祈禱,狗狗也是非常虔誠隊的6、什麼你媽?那是咱媽7、這一看就是表演,天天扛這玩意,一袋跟玩一樣。
  • Environment gets all-clear after chemical plant blast
    Environment gets all-clear after chemical plant blast
  • 看過這位姑娘,你就知道什麼叫做人森的巔峰!
    最近浙遊君的朋友圈被一位妹紙給刷屏了,看完她的簡歷,你造什麼叫做走上人森巔峰嗎?這位妹紙就是!先上幾張顏值比較高的妹紙美照!
  • Four dead, 41 injured in Nigerian church blast
    JOS, Nigeria -- At least four people were feared dead and 41 others were injured in a fresh blast on Sunday in a church in Jos, capital of north-central Nigeria's
  • 你知道酒店裡床尾放的長凳子幹什麼用的嗎?在古代它叫做「春凳」
    你知道酒店裡床尾放的長凳子幹什麼用的嗎?在古代它叫做「春凳」文/放眼去看聽到「春凳」,大家一定曾經聽說過。當然,它是一種凳子的稱呼,而且就常常出現在我們的身邊。如果你住過酒店,你會發現,一般在床尾的位置,會有一個小凳子,其實這個凳子不僅僅是擺設,它來源於我們先人智慧的結晶。為什麼說是智慧的結晶呢?之所以給它這麼高的評價,是因為它並不是傳統意義上的凳子,至少用途上不是專門設計供人「坐的」,它是一種什麼東西呢?原來它來源於古代的一種擺放的傳統。
  • 什麼叫做原創?什麼叫做抄襲?
    你辛辛苦苦的寫了一篇文章,轉眼之間就被別人抄襲和洗稿了,那種心情是一般人難以理解的。那麼,什麼叫做原創,什麼叫做抄襲,什麼又叫做洗稿呢?我相信,99.9%的人搞不清楚這三者之間的區別。說實話,如果你沒有寫過大量論文和做過大量項目,是搞不明白的。我做了十幾年論文和項目,所以我覺得我是可以把這個問題說清楚的,然後大家對照我所說的就會知道其它人的文章是否存在抄襲和洗稿的嫌疑了。首先,我們必須要搞懂原創和常識的問題。
  • Oil prices rise following blast
    Ahead of the blast, oil prices had fallen to a two-week low. US crude stocks rose by 4.1 million barrels to 309.3 million last week, the highest level since July 2002.
  • From water droplets onplant leaves to blast furnace technology
    報告題目:From water droplets onplant leaves to blast furnace technology報告人:Wilfried Konrad主持人(邀請人):王國勇 教授報告時間:12月7日18:00-20:00報告地點:南嶺校區機械材料館209學術報告廳