测序数据处理 —— 数据下载
如果是我们自己测的数据,一般公司提供的文件是压缩后的数据,后缀为
fastq.gz 或
fq.gz。但如果我们想要使用别人上传到
SRA 或
EBI 数据库中的测序数据,则需要使用专门的下载软件把这些数据下载到本地。
下载 SRA 数据
对于 SRA 数据库中的文件,我们可以使用官方提供的 sratools 工具包中的软件进行下载,该工具包可以使用 conda 来进行安装
conda install -c bioconda sra-tools
在 GEO 中搜索感兴趣的项目,并进入 SRA 数据库

我们可以选择全部或部分文件,并下载对应的 Accession List,我们选择两个文件

然后使用 sratools 工具包中的 prefetch 下载对应的文件,例如
prefetch --option-file SRR_Acc_List.txt --output-directory .
下载成功之后会有两个 sra 文件
ls */*sra
# SRR22225215/SRR22225215.sra SRR22225218/SRR22225218.sra
需要先将其转换为 fastq
ls */*sra | xargs fastq-dump --split-3
再将其压缩为 gz 格式,因为是双端测序,所以每个样本会有两个以 1 和 2 标识的数据
ls *fastq | xargs gzip
ls *fastq.gz
# SRR22225215_1.fastq.gz SRR22225215_2.fastq.gz SRR22225218_1.fastq.gz SRR22225218_2.fastq.gz
或者直接一步到位
ls */*.sra | xargs fastq-dump --split-files --gzip -O .
如果你嫌 fastq-dump 跑的太慢的话,可以使用更快的 fasterq-dump,并使用 -e 指定线程数,但是该方法不支持压缩命令,需要手动压缩
ls */*.sra | xargs fasterq-dump --split-files -e 10 -O .
# 压缩
ls *fastq | xargs gzip
如果你既想要飞一般的速度,同时能够压缩文件,则可以使用 parallel-fastq-dump
先用 conda 安装
conda install -c bioconda parallel-fastq-dump
使用命令行转换
mkdir -p raw
ls */*.sra | xargs -n 1 -P 4 -I {} parallel-fastq-dump \
--sra-id {} \
--threads 4 \
--outdir raw \
--split-3 \
--gzip \
--tmpdir /tmp
或者写入到 Bash 脚本中
# 设置输出目录
output_dir="./raw"
# 确保输出目录存在
mkdir -p "$output_dir"
# 遍历子目录中的所有 .sra 文件
for sra_file in $(ls */*.sra); do
echo "正在解压 $sra_file ..."
parallel-fastq-dump --sra-id "$sra_file" \
--threads 4 \
--outdir "$output_dir" \
--split-3 \
--gzip \
--tmpdir /tmp
echo "$sra_file 解压完成"
done
echo "所有文件解压完成"
下载 EBI 数据
如果下载 SRA 数据库的数据很慢,则可以尝试转道 EBI 数据库下载,这两个数据库中的数据是互通的。比如,进入 https://www.ebi.ac.uk/ena/browser/home 并搜索 SRR22225215

如果要获取所有项目的数据,可以点击第一列项目编号。点击对应的 fastq 文件会进行下载,当然我们不推荐这种方式。因为默认的文件链接是 FTP 形式的,可以获取所有样本的链接然后使用下载工具进行批量下载,点击 TSV 可以下载表格样式的样本信息,也可以根据样本链接的规律进行构造

我们推荐使用 IBM 的下载工具 aspera 进行下载,可以使用 conda 安装,或者下载软件包安装
conda install -c hcc aspera-cli
需要先找到自己的秘钥地址,conda 安装的路径在
echo ${$(which ascp)%/*}/../etc/asperaweb_id_dsa.openssh
手动安装秘钥在
~/.aspera/connect/etc/asperaweb_id_dsa.openssh
使用 aspera 下载,需要获取对应的链接,点击 Show Column Selection,然后选择 sra_aspera,在表格中会出现新的一列

获取到链接之后便可以下载数据了,可以运行如下命令
ascp -l 100M -P 33001 -QT -k 2 -i ${$(which ascp)%/*}/../etc/asperaweb_id_dsa.openssh era-fasp@fasp.sra.ebi.ac.uk:/vol1/srr/SRR222/015/SRR22225215 .
注意,需要在下载链接前加上 EBI 给的公共账户名 era-fasp 及地址
1589

被折叠的 条评论
为什么被折叠?



