本地化的NCBI BLAST+的安装及使用

在生物信息学,BLAST(基本的局部比对搜索工具)是一种算法,用于比较生物的序列信息,诸如蛋白质的氨基酸序列、DNA或RNA核苷酸序列。BLAST搜索使研究人员能够将一个目标蛋白或核苷酸序列(称为查询)与一个数据库进行比较,并识别某个特定阈值以上的与目标序列相似的库序列。在线的BLAST功能只需要将序列输入,然后BLAST,最后会给出相似的库序列(按照同源性高低排列)。在线BLAST明显存在两个缺陷:1.目标序列BLAST后的得到的库序列是多个物种的,如果我们只是要特定物种的话,还需要再自己找。2.如果目标序列有很多,则需要执行很多次,效率低。而本地化的BLAST+能很好的解决上面两个问题。

1.BLAST+的下载与安装

BLAST+下载地址: ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/

针对不同的平台(linux,mac,windows)选择性的进行安装,如图一。
下面以mac为例进行介绍:

1.下载:ncbi-blast-2.9.0+-x64-macosx.tar.gz
2.下载完成后,进行解压缩。
3.打开终端,输入以下代码:
#将目标地址设为环境变量
open ~/.bash_profile       #打开环境变量配置窗口。
在弹出的窗口中输入如下:
export PATH=$PATH:/Users/bcl/Desktop/software_plugin/ncbi-blast-2.9.0+/bin    #将blast文件夹中的bin地址设为环境变量。
#验证是否成功配置为环境变量
blastn                    #出现图二说明OK。
图一
图二

2.BLAST+的使用

下面以一个实例来说明怎么使用。比如说你想把番茄的一部分序列对应到桃基因组数据库中,并按照同源性高低得到与目标序列相似的库序列(根据不同的筛选标准,得到的序列条数会不一样),应该怎么做呢?

2.1 序列的下载

首先你得从相应的网站下载番茄一部分序列(因为我们以blastp为例,所以只下载了它的蛋白序列),以及下载得到桃的基因组文件(只用其中的蛋白序列)。下载得到的文件放在一个文件夹中。

2.2 库的构建

利用下载得到的桃的基因组文件进行构建蛋白库。在终端中输入如下代码:

cd /Users/bcl/Desktop/blastp        #cd到存放文件的地址。
makeblastdb -in Prunus_persica_v2.0.a1.allTrs.pep.fa -dbtype prot  
#下面为注释:
-in:代表用来构库的基因组文件的地址和文件名
-dbtype:代表构建的是什么库,prot代表蛋白库。

构建成功会出现图三以及文件夹中会多出三个文件(图四)。


图三
图四

2.3 目标序列与库序列进行比对

终端下输入如下代码:

blastp -help     #查看帮助文档
blastp -query JA_regulated_genes.fasta -db Prunus_persica_v2.0.a1.allTrs.pep.fa -out JA_regulated_genes_blastp.txt -evalue 1e-5 -outfmt 6        
#下面为注释。
-query:代表的是要进行blastp的番茄一部分序列文件
-db:为前面用于建库桃的的基因组文件
-out:为输出文件的文件名
-evalue:为筛选标准(evalue越低,相似性越高)
-outfmt:输出文件格式,6代表表格形式。

输出的结果按照同源性从高到低排列(目标序列与库序列进行同源比对时根据evalue筛选出来的可能不止一个),那么如何选出每个最匹配的呢?


图5

3.R studio中提取输出文件中同源性最高的序列

打开R studio,输入以下代码,即可实现。

#读取文件
txt <- read.csv('/Users/bcl/Desktop/blastp/JA_regulated_genes_blastp.txt',header=FALSE,sep='\t',encoding='UTF-8')   #第一个参数为上一步比对后生成文件的地址和文件名,后面的参数不需要做调整。
#构建一个布尔向量,索引。
index<- duplicated(txt$V1) #duplicated()在数据框函数中应用广泛
index
#筛选数据(两种)
            #method1
txt<-txt[which(index==FALSE),]  #选择非重复数据
txt
            #method2
txt<-txt[!index,]                              #选择非重复数据
txt
#数据写入到txt中,把行名和列名设为flase,并去掉引号
write.table(txt,file='/Users/bcl/Desktop/blastp/JA_regulated_genes_select.txt',row.names=FALSE,col.names = FALSE,quote=F)    #第二个参数与读取的时候同

下图为经过选择后的文件可发现已提取出同源性最高的序列。


图6

本文由博客一文多发平台 OpenWrite 发布!

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,444评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,421评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,036评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,363评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,460评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,502评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,511评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,280评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,736评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,014评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,190评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,848评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,531评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,159评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,411评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,067评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,078评论 2 352

推荐阅读更多精彩内容

  • Blast,全称Basic Local Alignment Search Tool,即"基于局部比对算法的搜索工具...
    晓佥阅读 14,968评论 1 26
  • 举个栗子🌰: 最近对拟南芥中的一个叫做CBF的基因非常感兴趣,现在我想看看这个CBF基因在一个新测序的物种Am基因...
    Ruta阅读 13,896评论 1 19
  • 转载自:https://www.jianshu.com/p/a912ad4a8dee有部分改动 Blast,全称B...
    东风008阅读 2,986评论 0 9
  • conda安装: conda create --name blast conda activate blast c...
    moneir阅读 3,061评论 0 4
  • 我知道 大多数快乐都是暂时的 所以我 也不刻意去寻找快乐
    Jones贝特莱夫阅读 56评论 0 0