更新NT數(shù)據(jù)庫的二三事

最近被要求更新一下NT數(shù)據(jù)庫,然后踩了好多坑,想記錄下來,避免以后再犯。

首先去官網(wǎng)上直接下載nt.fasta(wget -c ftp://ftp.ncbi.nlm.nih.gov/blast/db/FASTA/nt.gz),解壓后發(fā)現(xiàn)只有Accession ID,沒有g(shù)i號,這樣建完的index,用blast分析是沒有辦法得到scientific name的,所以就想辦法怎么解決這個問題。

我想要的格式:

下載下來的格式:

于是跑過去問小伙伴,他告訴我用blast軟件里的update_blastdb.pl下載下來NT的index文件,再用blastdbcmd軟件提取fasta文件就好了,然后就開始我的踩坑之旅,我先運(yùn)行命令行:perl update_blastdb.pl nt,不久就報(bào)錯:Unable to close datastream at update_blastdb.pl line 202. Failed to download nt.00.tar.gz.md5!

看了一下update_blastdb.pl的使用說明,才發(fā)現(xiàn)如果按照我之前的命令行下下來的還是舊的V4版的NT庫,修改了參數(shù)再次嘗試,雖然撐得久了點(diǎn),但還是相似的報(bào)錯,估計(jì)被公司IT限制了網(wǎng)絡(luò)。代碼默認(rèn)從NCBI上下載,換了一個source,從Google?Cloud?Platform上下載:

perl update_blastdb.pl --blastdb_version 5 --decompress nt --source gcp --passive。

但是我是白天在公司下載的數(shù)據(jù),導(dǎo)致其他同事上網(wǎng)特別慢,被IT找上門來。。。還是放棄了。

參考鏈接:

https://www.ncbi.nlm.nih.gov/books/NBK537770/

https://colab.research.google.com/drive/1HLFq3mC75dc5aYZCYDpTgaj_GAUASs8x#scrollTo=XnlYgZWQhCnS

看了一下update_blastdb.pl的代碼,其實(shí)下載的還是ftp://ftp.ncbi.nlm.nih.gov/blast/db/nt.*.tar.gz的內(nèi)容,于是晚上的時候用wget很快就下來了,我是分批次下的,例如:wget -c ftp://ftp.ncbi.nlm.nih.gov/blast/db/nt.0[0-9].tar.gz。

用blastdbcmd提序列又悲劇了,提出來的fasta的表頭格式和我直接在官網(wǎng)上下的一樣:

blastdbcmd -entry all -db nt -dbtype 'nucl' -out nt.fasta

向小伙伴求助,小伙伴說可以在NCBI網(wǎng)頁上下載gi號,然后根據(jù)gi號用blastdb_aliastool直接提取建好的庫,我試著下了一下細(xì)菌的gi號,都下了好幾M了還在下載,咬咬牙,還是重新研究了一下blastdbcmd的用法,終于嘗試出了我想要的格式,默認(rèn)output format是%f,但是修改成 ">gi|%g|%i %t\n%s" 就能得到我想要格式:

blastdbcmd -entry all -db nt -dbtype 'nucl' -outfmt ">gi|%g|%i %t\n%s" | sed -e 's/\\n/\n/g' > nt.fasta

參考鏈接:http://blog.sina.com.cn/s/blog_16152d7d70102xnc3.html

總結(jié):碰到軟件要好好的看使用說明,不要急吼吼的問被人或者上網(wǎng)上查,網(wǎng)上信息不全有可能被誤導(dǎo),導(dǎo)致不必要的彎路。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容