基因组分析

生信工具1: SRAToolkit

2023-04-22  本文已影响0人  小程的学习笔记

SRA(Sequence ReadArchive)数据库是用于存储二代测序的原始数据,包括 454,Illumina,SOLiD,IonTorrent,Helicos 和 CompleteGenomics。除了原始序列数据外,SRA现在也存在raw reads在参考基因的比对信息。

根据SRA数据产生的特点,将SRA数据分为\color{green}{四类},并采用不同的前缀加以区分:
\ \ \ \ 1) Studies-- 研究课题 (ERP或SRP):就实验目标而言的,一个study 可能包含多个Experiment
\ \ \ \ 2) Experiments-- 实验设计 (SRX):包含了Sample、DNA source、测序平台、数据处理等信息
\ \ \ \ 3) Runs-- 测序结果集 (SRR):表示测序仪运行所产生的reads
\ \ \ \ 4) Samples-- 样品信息 (SRS)

SRA中数据结构的层次关系为:Studies -> Experiments -> Samples -> Runs.

1. SRA数据库下载

SRA Toolkit是ncbi下载.sra文件和转换.fastq文件的极好工具

1.1 下载、安装及环境配置

# 下载压缩包
cd ~/software # 进入存放工具的文件夹
wget https://ftp-trace.ncbi.nlm.nih.gov/sra/sdk/2.11.0/sratoolkit.2.11.0-ubuntu64.tar.gz

# 解压
tar xzvf sratoolkit.2.11.0-ubuntu64.tar.gz

# 配置环境
echo 'export PATH=$PATH:$HOME/software/sratoolkit.2.11.0-ubuntu64/bin ' >> ~/.bashrc
source ~/.bashrc
vdb-config --interactive    # 出现一个框架,按字母x键退出即可

# 检查sratoolkit 的配置
prefetch -V
## "prefetch" version 2.11.0

1.2 下载.sra文件

# 直接输入SRR号(适用于单个或少数)
prefetch SRR8956146  --max-size 400G  #下载.sra文件

# 批量下载数据
cat SRR_Acc_List.txt (可通过Run Accessions直接获取或自己编辑txt文件)
## SRR8956146
## SRR8956147
## SRR8956148
## SRR8956149
## SRR8956150
## SRR8956151

prefetch --option-file SRR_Acc_List.txt 

# 多线程下载
cat sra.txt | parallel -j 10 "prefetch {}"

常用参数
--max-size:默认最大下载大小为20G,若请求的增量大于20G,需增加该限制

SRAToolkit-1

1.3 提取fastq文件

# sratools中的fastq,不能多线程运行,耗时较长
fastq-dump --gzip --split-3  SRR8956146.sra -O ./ 

# fasterq-dump增添多线程分析,但不能重命名及压缩
fasterq-dump --split-files -e 40  SRR8956146.sra -O ./
fasterq-dump --split-files -e 40 --include-technical SRR17555533.sra -O ./ # 10x的SRR需要加--include-technical参数

# pfastq-dump,并行版fastq-dump
git clone https://github.com/inutano/pfastq-dump # 下载
cd pfastq-dump
chmod a+x bin/pfastq-dump
echo 'export PATH=$PATH:/software/pfastq-dump/bin ' >> ~/.bashrc # 环境配置
source ~/.bashrc

pfastq-dump --gzip --split-files -t 10  SRR8956146.sra

常用参数:
--split-3:-3意味分成3个文件。
\ \ \ \ \ \ ꔷ 若结果只有一个文件,说明数据不是双端(第三个文件太大会覆盖前两个);
\ \ \ \ \ \ ꔷ 若结果有两个文件,说明是双端文件并且数据质量比较高(没有低质量的reads或者长度小于20bp的reads);
\ \ \ \ \ \ ꔷ 若结果有三个文件,说明是双端文件,但是有的数据质量不高,存在trim的结果。
--gzip:输出gz格式,节省空间的同时也不会给后续比对软件造成压力
-O ${directory} :设置输出的文件间路径,outdirectory改为相应路径
-e:设置多线程的个数
-t:设置多线程的个数

上一篇下一篇

猜你喜欢

热点阅读