J
Jay2Echo
V1
2022/12/06阅读:137主题:默认主题
[Linux|生信]project4_01:批量下载sra文件并转化为fastq文件
背景
-
最近参加“生信技能树”组织的实习,要求完成从*.sra原始数据出发完成人类单细胞转录组数据下载、质控过滤、Hisat2比对、featureCounts定量的任务。接下来一段时间会出一个小系列。 -
几年前在学校的生信课上分析了一个完整的Chip-Seq流程,当时对很多概念一知半解,这次借着这个机会再回头打打基础。

数据下载
环境准备
首先安装一个conda虚拟环境并更换镜像(下载国外资源更方便),见文末参考链接
# 下面四行配置北京外国语大学的conda的镜像
# 配置完需要重启终端
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels https://mirrors.bfsu.edu.cn/anaconda/cloud/bioconda/
conda config --set show_channel_urls yes
# 新建conda虚拟环境
conda create -n biotree
随后依次安装下述软件包
# 进入刚创建的虚拟环境
conda activate biotree
# 数据下载所需包
conda install -y -c hcc aspera-cli
conda install -y -c bioconda sra-tools
# 后续分析所需包
conda install -y -c bioconda fastqc trim-galore hisat2 subread
conda install -y -c bioconda salmon
conda install -y -c bioconda samtools
根据SRR*编号批量下载数据
-
将下列编号置于一个文件中(如:“my_Acc_List.txt”),一行一个。 -
批量下载SRA数据
cat my_Acc_List.txt | while read id;do (prefetch -X 100G $id );done
可得如下三个文件夹: 3. 批量将SRA数据转化为fastq数据
# 3.1.批量将SRA文件转换fastq文件
ls -d SRR* | while read id;do ( nohup fasterq-dump -O ./ --split-files -e 2 ./$id --include-technical & );done
# 3.2.批量将fastq文件压缩成fastq.gz文件
ls *fastq |while read id;do (nohup gzip $id &);done
注:
-
3.1中“ls”命令后需要添加“-d”参数 不加“-d”参数管道符传递的是子文件夹的名字,会导致命令报错 -
上述shell命令中的“nohup &”是将操作置于后台运行,就是说我们这边终端关机命令还可以在服务器上正常运行。防止意外停电是不是很Nice!
其他
如何获取上述提到的SRR编号?
-
首先登录NCBI官网(https://www.ncbi.nlm.nih.gov/),在搜索框中输入感兴趣的关键词,选择“GEO datasets”;

-
选择感兴趣的项目

-
找到页面下侧“SRA”

-
获取编号文件

-
推文多平台同步发布,公众号内容食用更佳 -
更多内容,请关注微信公众号“生信矿工”

参考链接
作者介绍
J
Jay2Echo
V1