批量下载sra文件linux,NCBI下载SRA数据的4种方法
作为生命科学的从事者,不论是老师或者学生都应该用过NCBI((National Center for Biotechnology Information Search database,一个综合性的生命科学资源网站)。那么作为一个生命科学中的一员,如果你们没用过NCBI网站,这就好像是在说“知网是啥”。希望提到这个网站的事情,你的表情不会是下面这个样子,哈哈哈。。。
不管你是否了解NCBI网站,这都不重要,重要的是如果哪一天你需要用到了(比如要从NCBI上面下载个原始数据,这个需求比较合理吧!),你会不会呢?当然不会也没有关系了,因为这篇就是教你如何下载数据的!哈哈。。。
下面言归正传,来说一说NCBI下载数据的几种方式:
NCBI官方的 SRA Toolkit 进行下载
wget, curl 命令直接下载
aspera 工具下载
grabseqs 工具下载
1、SRA Toolkit 下载数据
第一种方法就是使用NCBI官方提供的软件来下来,这个也是相当的方便可行,只要到官网下载SRA Toolkit软件(该软件是二进制的格式,如下截图,选中对应本版下载到本地解压就可以使用,相当方便),然后就可以下载数据了。
软件准备好了,下面就可以下载数据了:
prefetch SRR1482463 -O output #output替换为你想下载数据的路径
那么如果想批量下载一个项目的很多数据呢?首先得找到数据的SRR号,随便选中一个SRR号在“SRA”数据库中搜索,会得到如下截图:
然后点击“All runs”,会得到如下截图:
接着选中你想下载的数据,点击"Accession list",会下载一个包含选中数据SRR号的文件(SRR_Acc_List.txt),如下所示:
最后就可以批量下载了:
prefetch -O output --option-file SRR_Acc_List.txt
2、wget, curl 下载数据
第二种下载方式,wget, curl 命令直接下载。用这种方式下载数据需要知道数据的下载链接,如何获取数据链接呢?获取数据链接也有两种方式,一是通过NCBI网页,二是通过SRA toolkit。
先说通过网页如何获取,当我们在“SRA”数据库中搜索SRR后,点击下面表格中的SRR号如“SRR1482463”,会跳转到页面如下:
切换到‘Data access’界面,就找到数据链接了,如下截图:
通过SRA toolkit获得数据链接就更省事了,到SRA toolkit软件的bin目录下找到srapath软件,一行命令就可以了:
srapath SRR1482463
#结果如下
https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos1/sra-pub-run-5/SRR1482463/SRR1482463.2
找到链接就可以用wget来下载数据了:
wget -c -t 0 -O path/SRR1482463.sra https://sra-downloadb.be-md.ncbi.nlm.nih.gov/sos1/sra-pub-run-5/SRR1482463/SRR1482463.2
#-c -t 配合使用可以防止下载数据的过程中链接中断的问题,-O则可以指定下载路径和文件名。
3、aspera下载数据
第三种下载方式,就是使用aspera软件来下载数据:
#软件下载与安装
$ wget https://download.asperasoft.com/download/sw/connect/3.9.1/ibm-aspera-connect-3.9.1.171801-linux-g2.12-64.tar.gz
$ tar zxvf ibm-aspera-connect-3.9.1.171801-linux-g2.12-64.tar.gz
$ bash ibm-aspera-connect-3.9.1.171801-linux-g2.12-64.sh
#数据下载
ascp -v -k 1 -T -l 200m -i /asperaweb_id_dsa.openssh anonftp@ftp.ncbi.nlm.nih.gov:/blast/db/FASTA/nt.gz
4、grabseqs下载数据
第四种下载方式是使用grabseqs软件来下载数据,该软件是比较新的软件,可以将下载的sra数据直接转换为fastq文件,相比于上面三种省略了sra -> fastq的转换步骤,可谓是一步到位。因为该软件会调用fastq-dump直接将sra拆分成fastq,所以你得提前安装好fastq-dump。该软件是基于python3,可使用pip安装相当方便。安装和使用方法如下:
#安装
pip3 install grabseqs
#下载数据
grabseqs sra -t 6 SRR000000 SRP000000 PRJNA000000
sra转化为fastq
当我们拿到了sra数据并不能直接使用,需要将其转为fastq文件。数据都拿到了,转化格式当然是很简单的事了,就是跑一行命令的事情。使用SRA Toolskit中的fastq-dump软件即可。值得注意地是如果数据是pair-end的格式最好加参数--split-3,这样对于一方有而另一方没有的reads就会单独放在一个文件里。
#sra -> fastq
fastq-dump SRR1482463.sra --split-3 --gzip --defline-qual '+' -A filename -O outdir
四种方式你学会了,其实方式不重要,选择一个适合自己的方式即可,重要是能够获取到自己想要的数据,毕竟科研的本质是要数据来支持自己的研究。
最后
emm,今天就分享到这里,帖子纯手打不容易啊,小二哥我得去喝口水休息一下了。各位看官们帮忙点个赞吧!!!
批量下载sra文件linux,NCBI下载SRA数据的4种方法相关推荐
- linux终端下载notepad,在Linux系统上安装NotePad++的三种方法介绍
本文介绍在Linux操作系统上安装NotePad++的三种方法,使用Snap.Wine和NotePadQQ.这里要说的是:由于像Wine和Snap软件包这样的工具,在Linux上运行的Notepad+ ...
- ttc文件linux安装,centos系统安装中文字体几种方法
前天有用户反应,生成的报到单中他的名字少了一个字.仔细检查了一下,原来是centos系统的默认字体没有他名字中的那个字,于是就直接被忽略了. 其实那个字并不生僻,于是不得不安装中文字体,安装过程也很简 ...
- linux下载测序数据,利用SRA号从NCBI下载测序原始数据
生物或医学中涉及高通量测序的论文,一般会将原始测序数据上传到公开的数据库,上传方式见测序文章数据上传找哪里:并在文章末尾标明数据存储位置和登录号,如 The data from this study ...
- python批量下载文件只有1kb_Python 实现批量从不同的Linux服务器下载文件
基于Python实现批量从不同的Linux服务器下载文件 by:授客 QQ:1033553122 实现功能 批量从不同的Linux服务器下载指定文件 测试环境 Win7 64位 Python 3.3. ...
- Python 实现批量从不同的Linux服务器下载文件
基于Python实现批量从不同的Linux服务器下载文件 by:授客 QQ:1033553122 实现功能 1 测试环境 1 使用方法 1 1. 编辑配置文件conf/file_for_downl ...
- python批量下载网页文件夹_Python实现批量从不同的Linux服务器下载文件
基于Python实现批量从不同的Linux服务器下载文件 by:授客 实现功能 批量从不同的Linux服务器下载指定文件 测试环境 Win7 64位 Python 3.3.2 pscp 64位 下载地 ...
- mysql 文件批量插入_mysql大批量插入数据的4种方法示例
前言 本文主要给大家介绍了关于mysql大批量插入数据的4种方法,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧 方法一:循环插入 这个也是最普通的方式,如果数据量不是很大,可以使用, ...
- centos 卸载软件_一篇看懂!详解-Linux系统中安装软件的三种方法
Linux系统中安装软件的三种方法 注:本文主要以CentOS为例介绍常用的安装方式,其他版本linux在文章底部 Linux系统中怎么安装软件,首先说一下应用程序与系统命令的区别: 1.文件位置 系 ...
- linux下限制CPU使用率的3种方法 (转)
在租的云服务器上架了一个获取BTCC实时交易数据的服务器程序,因为用了一个while死循环处理数据信息,所以云服务器上的处理器占用率一直在90%多,这两天邮箱里一直收到服务器CPU占用率过高的邮件,在 ...
最新文章
- 双活数据中心对企业的帮助
- numpy.array创建行数超过一行的矩阵为什么要用两层中括号?
- IFE-16 addEventHandler跨浏览器实现事件绑定
- 非此即彼的逻辑错误_辩证思维与逻辑思维相对立
- GitHub上读北大:覆盖AI高数等130多门课,讲义考题答案全都有,标星已3k+
- 【CentOS Linux 7】实验3【网络配置管理】
- 在物理内存中观察CLR托管内存及GC行为
- linux qt5.9交叉编译,QT5.9移植
- SpringMVC 异常的处理
- 无效的变量名c语言,变量方法用法 _C语言-w3school教程
- 【PDF直接下载】6G总体愿景与潜在关键技术白皮书
- 时速云CEO:相对于IaaS和PaaS,未来CaaS将如何定位?
- 学计算机买戴尔笔记本哪款,戴尔笔记本大学生用,买哪款比较好?
- web网页设计期末课程大作业 基于HTML+CSS+JavaScript响应式环保科技公司网站模板(环保主题网站设计)
- vnc以及xfce安装\xrdp连接
- 理解SparkSteaming窗口函数操作window()
- Git使用流程及技巧 - 详细教程
- ubuntu18.04 network有线网络图标缺失解决记录
- THREEJS - 旋转中心调整
- API-String类、基本数据类型对象包装类