生物信息学习--nr/nt 数据库(总+子)构建
1. 从ncbi上下载数据
下载地址:https://ftp.ncbi.nlm.nih.gov/blast/db/FASTA/
mac端:
安装brew,运行如下命令:
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
安装wget命令:
brew install wget
安装md5sum命令(用于校验下载文件是否完整):
brew install md5sha1sum
尝试一:
wget -c https://ftp.ncbi.nlm.nih.gov/blast/db/FASTA/nr.gz
wget -c https://ftp.ncbi.nlm.nih.gov/blast/db/FASTA/nt.gz
-c 支持断点续传
结果:下载缓慢,结果不完整
尝试二:
rsync命令下载
rsync --copy-links --recursive --times --verbose rsync://ftp.ncbi.nlm.nih.gov/blast/db/FASTA/nt.gz ./
结果:下载缓慢,结果不完整
尝试三:
aspera 下载
参考文章:
Aspera下载安装使用 - 何物昂 - 博客园Aspera Linux 安装 conda 安装 在Linux上安装Aspera,方便的还是直接通过conda进行安装(已经安装了Anaconda),在需要安装的环境下输入以下命令进行安装: $ cohttps://www.cnblogs.com/huanping/p/14308007.html
生物信息就该这么学(8):“不择手段”下数据 - 知乎做生物信息,不可避免一定要下载数据,例如下载基因组参考序列,原始测序数据,各种基因注释信息。总之,你肯定要用到下载数据。下载数据并不是一件容易的事情。你需要很多时间找到数据原始地址。找到下载地址之后…https://zhuanlan.zhihu.com/p/399263404
尝试conda 安装aspera
Conda 安装命令:
conda install -c hcc aspera-cli -y
但是报错:
You must agree to the license before using aspera-cli, http://www-03.ibm.com/software/sla/sladb.nsf/displaylis/2ABD3328689EBBFE8525830C007A5F38
不明觉厉,选择安装包安装
参考如下文章:
在Mac上使用Aspera的完整步骤 - 简书写在前面的话:在经过以下这些步骤之后,我又发现了用图形界面使用Aspera的办法,简单易懂。详见网址:https://www.jianshu.com/p/36a7af2620...https://www.jianshu.com/p/ae860f557311
跳转至官网Aspera - Connect | IBM 下载推荐的apk安装包(4.2)进行安装(需进行注册)
但是最新版的安装之后在Resources目录下找不到需要的asperaweb_id_dsa.openssh 文件。
卸载之后安装低版本4.1,终于正常存在asperaweb_id_dsa.openssh 文件
使用如下命令进行下载:
/Users/XXX/Applications/Aspera\ Connect.app/Contents/Resources/ascp -i /Users/XXX/Applications/Aspera\ Connect.app/Contents/Resources/asperaweb_id_dsa.openssh --overwrite=diff -T -l6000m anonftp@ftp.ncbi.nlm.nih.gov:blast/db/FASTA/nt.gz /Users/XXX/database
Aspera的常用参数:
-T
不进行加密。若不添加此参数,可能会下载不了。
-i string
输入私钥,安装 aspera 后有在目录 Aspera\ Connect.app/Contents/Resources下有
--host=string
ftp的host名,NCBI的为ftp-private.ncbi.nlm.nih.gov;EBI的为fasp.sra.ebi.ac.uk。
--user=string
用户名,NCBI的为anonftp,EBI的为era-fasp。
-l string
设置最大传输速度,比如设置为 200M 则表示最大传输速度为 200m/s。若不设置该参数,则一般可达到10m/s的速度,而设置了,传输速度可以更高。
结果:速度很快,校验没有问题。
linux端(Ubuntu系统):
一样,wget和rsync很慢
Aspera相同,4.2版本也是找不到asperaweb_id_dsa.openssh 文件
4.1版本可正常下载,密钥的位置为~/.aspera/connect/etc/目录下。
若出现如下报错:
ascp: Failed to open TCP connection for SSH, exiting.Session Stop (Error: Failed to open TCP connection for SSH)
命令中增加-P 33001
注意:大写P
2.获取nr/nt子库信息
参考文章:
Nr数据库子库构建 - 云+社区 - 腾讯云在经过基因组组装或转录组差异基因表达量分析之后,对其结果进行注释是比较重要的一步,如何注释以及如何得到精确的注释结果?https://cloud.tencent.com/developer/article/1943973
a.提取对应物种的taxid
需要使用到的软件安装:
# taxonkit
conda install -c bioconda taxonkit
# csvtk
conda install csvtk
数据库:
wget -c https://ftp.ncbi.nih.gov/pub/taxonomy/taxdump.tar.gz
tar -zxvf taxdump.tar.gz
# 解压文件存于home目录中.taxonkit/,
程序默认数据库默认目录 mkdir -p $HOME/.taxonkit
cp names.dmp nodes.dmp delnodes.dmp merged.dmp $HOME/.taxonkit
准备完毕后,获取相应物种的taxonID
例如植物的:
grep -iw "plants" ~/.taxonkit/names.dmp
或者:
grep -P "\|\s+[pP]lant\w*\s*\|" ~/.taxonkit/names.dmp
可得到如下结果:
通过这种方式,可以获得不同物种taxonID
我获取的几种结果如下:
b.获取对应物种类群所包含的序列(accessionID获取)
获取accessionID数据,下载地址:
Index of /pub/taxonomy/accession2taxidhttps://ftp.ncbi.nlm.nih.gov/pub/taxonomy/accession2taxid/nr库相关:https://ftp.ncbi.nlm.nih.gov/pub/taxonomy/accession2taxid/prot.accession2taxid.gz
nt库相关:https://ftp.ncbi.nlm.nih.gov/pub/taxonomy/accession2taxid/nucl_gb.accession2taxid.gz
写如下shell脚本,获取对应物种中的accessionID
~/software/taxonkit list --ids $1 --indent "" > $1.taxid.txt &&\
~/software/csvtk grep -t -f taxid -P $1.taxid.txt nucl_gb.accession2taxid | ~/software/csvtk cut -t -f accession.version,taxid | sed 1d > $1.acc2taxid.txt &&\
cut -f 1 $1.acc2taxid.txt > $1.acc.txt
运行sh getaccid.sh taxonID获取对应信息,例如:
sh getaccid.sh 3193
最终结果(xxx.acc.txt)中包含如下结果
可根据这个列表,通过seqkit软件获取对应的fa序列。
~/software/seqkit grep -f 10239.acc.txt nt.fa -o viruses.fa
~/software/seqkit grep -f 10509.acc.txt nt.fa -o Mastadenovirus.fa
~/software/seqkit grep -f 2157.acc.txt nt.fa -o archaea.fa
~/software/seqkit grep -f 2759.acc.txt nt.fa -o eukaryotes.fa
~/software/seqkit grep -f 2.acc.txt nt.fa -o bacteria.fa
~/software/seqkit grep -f 3193.acc.txt nt.fa -o plants.fa
~/software/seqkit grep -f 33208.acc.txt nt.fa -o animals.fa
~/software/seqkit grep -f 4751.acc.txt nt.fa -o fungi.fa
~/software/seqkit grep -f prokaryotes.acc.txt nt.fa -o prokaryotes.fa
3.根据fa文件构建index
blast+ index构建
命令如下:
nt:
~/software/ncbi-blast-2.13.0/bin/makeblastdb -in ~/Database/nt/animals.fa -dbtype nucl -input_type fasta -out animals -parse_seqids
nr:
~/software/ncbi-blast-2.13.0/bin/makeblastdb -in ~/Database/nr/animals.fa -dbtype prot -input_type fasta -out animals -parse_seqids
diamond index构建
~/software/diamond makedb --in animals.fa -d animals
生物信息学习--nr/nt 数据库(总+子)构建相关推荐
- 构建NCBI本地BLAST数据库 (NR NT等) | blastx/diamond使用方法 | blast构建索引 | makeblastdb...
参考链接: FTP README 如何下载 NCBI NR NT数据库? 下载blast:ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+ 先了解 ...
- 家族关系查询系统程序设计算法思路_【学习笔记】数据库基础 - 查询优化
目录 什么是数据库查询优化? 影响查询优化的因素 优化策略概述 查询优化的总体思路 语义优化 -- 内容等价性 语法优化(逻辑层优化)---语法等价性 执行优化(物理层优化) 查询优化在DBMS中的位 ...
- 本地blast与nr/nt库
步骤一:NT/NR库全库下载 用wget 对数据库进行下载 NT/NR库:https://ftp.ncbi.nlm.nih.gov/blast/db/ NT库有76个子文件构建成NT全库 NR库有63 ...
- 即将实习的应届毕业生 学习java SpringMVC 数据库 知识总结
即将实习的应届毕业生 学习java SpringMVC 数据库 知识总结 1.Java语言的优点: 1)Java是纯面向对象语言 2)与平台无关性,一次编译到处运行 3)Java提供了狠多内置类库 4 ...
- 数据挖掘学习笔记——GEO数据库:芯片数据分析
数据挖掘 数据挖掘学习笔记--GEO数据库:芯片数据分析 文章目录 数据挖掘 一.芯片基础知识 1.1.背景 二.GEO数据库概述 2.1.基础简介 2.2.检索页面展示 三.GSE项目的三种下载方式 ...
- 分享五款java学习辅助工具,总有你用的上的~
想要学好java技术,除了自身的努力,辅助工具也不缺少,辅助工具可以帮助大家在今后的工作中可以提高工作效率,下面小编就来分享五款java学习辅助工具,总有你用的上的~ 五款java学习辅助工具: 1. ...
- 以下用于数据存储领域的python第三方库是-Python3爬虫学习之MySQL数据库存储爬取的信息详解...
本文实例讲述了Python3爬虫学习之MySQL数据库存储爬取的信息.分享给大家供大家参考,具体如下: 数据库存储爬取的信息(MySQL) 爬取到的数据为了更好地进行分析利用,而之前将爬取得数据存放在 ...
- Oracle数据库:子查询、单行子查询,多行子查询,in,any,all语句,子查询的练习案例
Oracle数据库:子查询.单行子查询,多行子查询,in,any,all语句,子查询的练习案例 2022找工作是学历.能力和运气的超强结合体,遇到寒冬,大厂不招人,可能很多算法学生都得去找开发,测开 ...
- 通俗易懂的oracle11g讲解,王二暖DBA学习开发Oracle11G数据库视频教程带课件
王二暖DBA学习开发Oracle11G数据库视频教程带课件 这套视频讲的非常深刻,但是作者深入浅出让人通俗易懂,有广度有深度,希望能帮助您在java开发和DBA道路上披荆斩棘,让大家少走弯路. 第1部 ...
最新文章
- hashmap中用红黑树不用其他树_HashMap面试专题:常问六题深入解析
- 1019 数字黑洞 (20 分)java
- 装机人员工具 - imsoft.cnblogs
- 为了压榨CNN模型,这几年大家都干了什么
- python基础知识三——try与except处理异常语句
- Angular中的路由配置、路由重定向、默认选中路由
- oracle中year类型吗,为什么表名this_year_end+next_year在Oracle数据库中无效?()
- IDEA开发工具的学习
- 【第四篇章-android平台MediaCodec】推断是否支持硬件解码码
- 为什么豌豆荚可以在应用安装完成界面打广告?
- vim 查找匹配字符串次数
- 2018计算机本科论文,计算机科学学院关于2018届本科毕业论文(设计)的工作安排...
- cmd查看IP地址指令
- 8.声卡驱动05-自己实现alsa驱动-虚拟声卡-kcontrol
- AdminLTE框架的基本使用
- 计算机软件考试高级工程师,软考高级工程师容易考吗
- qq邮箱,网易邮箱,smtp邮箱发邮件
- Beta周王者荣耀交流协会第五次Scrum会议
- [汇编]怎样让猫吃辣椒
- Android CardView卡片布局详解(八)