SRA数据(2)------SRA数据处理

上次分享我们通过两种方式下载得到了SRA数据,今天就开始对SRA进行处理(以SRR5489805为例)。
SRA(Sequence ReadArchive)数据库是用于存储二代测序的原始数据,这种数据格式不能直接进行处理,需要转换成fastq或fasta文件格式才能进行质控以及去adapt等处理。

SRA转fastq:

进行转换之前我们需要知道我们拿到的数据是单端还是双端数据,可以用fastq-dump -X 1 --split-spot SRRxxxxxxx.sra来判断测序类型.

fastq-dump -X 1 --split-spot -Z SRR5489805.sra | wc -l

如果返回值是4,就是单端SE;如果返回值是8,那么就是双端PE。

#single-end 单端测序

.../fastq-dump  SRR5489805.sra               # 结果生成SRR5489805.fastq

.../fastq-dump  --fasta  SRR5489805.sra   # 结果生成SRR5489805.fastq

#pair-end  双端测序

.../fastq-dump --split-3  SRRxxxxxxx.sra    #  结果生成   SRRxxxxxxx_1.fastq,SRRxxxxxxx_2.fastq
fastq转fasta

有时我们需要把fastq文件转换成fasta文件,但是个人推荐在不必要的情况下,还是使用fastq文件进行分析,因为fastq文件的信息比fasta文件更全面。

awk 命令转换
awk '{if(NR%4 == 1){print ">" substr($0, 2)}}{if(NR%4 == 2){print}}' xxx.fastq > xxx.fasta
fastqc质控

1.fastqc下载:
进入下面网址,选择对应的版本下载

#不挂后台
wget http://www.bioinformatics.babraham.ac.uk/projects/fastqc/fastqc_v0.11.9.zip
#挂后台
nohup wget http://www.bioinformatics.babraham.ac.uk/projects/fastqc/fastqc_v0.11.9.zip &

2.解压:

unzip fastqc_v0.11.9.zip

3.赋予执行权限:

cd FastQC/
ls
cisd-jhdf5.jar  fastqc           Help         jbzip2-0.9.jar  LICENSE_JHDF5.txt  net  README.md   RELEASE_NOTES.txt  sam-1.103.jar  uk
Configuration   fastqc_icon.ico  INSTALL.txt  LICENSE         LICENSE.txt        org  README.txt  run_fastqc.bat     Templates
chmod 700 fastqc 

4.质控:

#挂后台进行质控
nohup /home/Taoct_16/test/FastQC/fastqc -o /home/Taoct_16/test/result -t 6 ./SRR5489805.fastq &
# 基本格式
# fastqc [-o output dir] [--(no)extract] [-f fastq|bam|sam] [-c contaminant file] seqfile1 .. seqfileN
# 主要是包括前面的各种选项和最后面的可以加入N个文件
# -o --outdir FastQC生成的报告文件的储存路径,生成的报告的文件名是根据输入来定的
# --extract 生成的报告默认会打包成1个压缩文件,使用这个参数是让程序不打包
# -t --threads 选择程序运行的线程数,每个线程会占用250MB内存,越多越快咯
# -c --contaminants 污染物选项,输入的是一个文件,格式是Name [Tab] Sequence,里面是可能的污染序列,如果有这个选项,FastQC会在计算时候评估污染的情况,并在统计的时候进行分析,一般用不到
# -a --adapters 也是输入一个文件,文件的格式Name [Tab] Sequence,储存的是测序的adpater序列信息,如果不输入,目前版本的FastQC就按照通用引物来评估序列时候有adapter的残留
# -q --quiet 安静运行模式,一般不选这个选项的时候,程序会实时报告运行的状况。
#完成后,查看结果
ls
SRR5489805_fastqc.html  SRR5489805_fastqc.zip

质控完成后会生成一个.html文件和一个.zip文件,打开.html文件就能看到质控的结果。对质控结果的解读我后面会进行分享,大家也可以在网上先搜索一下,今天就不在这里讲解了,因为质控的内容需要很大的篇幅。

cutadapt

去接头可以根据自己的质控报告来决定,一般来说,质控报告会告诉你你的接头都是哪些,然后进行针对性的cut就可以了。
1.cutadapt下载安装:(由于我拿到的这个数据没有接头,所以下面的演示代码是我搜集整理出来的,如果有不对的地方,请多多见谅)

#使用pip安装
$ pip install --user --upgrade cutadapt
#使用conda安装
$ conda install -c bioconda cutadapt

2.去掉3’端的接头,

# -a 3’接头
# -o 输出,o是output的意思
# -j 选择几个核
cutadapt -j 10 -a AACCGGTT -o output.fastq input.fastq

3.去除5’端的接头

# -g 5'接头
# -o 输出,o是output的意思
# -j 选择几个核
cutadapt -g ADAPTER -o output.fastq input.fastq

4.双端测序数据去接头

cutadapt -a AATGATACGGCGACCACCGAGATCTACACTCTTTCCCTACACGACGCTCTTCCGATCT -a ATCTCGTATGCCGTCTTCTGCTTG \
-A AGATCGGAAGAGCGTCGTGTAGGGAAAGAGTGTAGATCTCGGTGGTCGCCGTATCATT -A CAAGCAGAAGACGGCATACGAGAT \
-e 0.1 -O 5 -m 50  -n  2 --pair-filter=both \
-o read_PE1.fq -p read_PE2.fq test1.fastq test2.fastq >& log.txt
#两个-a 参数后面接的是两种接头,两个-A参加后面接的是同样的两个接头的反向互补序列。
#加上 -n 2 是因为有两个接头,测序数据里面有可能一个read里面含有两种接头,所以需要检测两次。
# -e 0.1 -O 5 -m 50 是标准参数,自其中-m 设置为50 是表示去除接头后如果read长度小于50就不要了

详细参数解释如下:

-g: #剪切reads 5'端adapter(双端测序第一条read),加$表示adapter锚定在reads 5'端
-a: #剪切reads 3'端adapter(双端测序第一条read),加$表示adapter锚定在reads3'端
-O MINLENGTH, --overlap=MINLENGTH #adapter与reads最小overlap,才算成功识别; Default: 3
-m LENGTH, --minimum-length=LENGTH: 根据最短长度筛选reads;Default: 0
--discard-untrimmed, --trimmed-only #丢掉不包含adapter的reads
 -e ERROR_RATE, --error-rate=ERROR_RATE  #adapter匹配允许的最大错配率(错配/匹配片段长度);Default: 0.1
--no-trim: 不修剪adapter,直接输出满足跳进啊的reads
-u LENGTH, --cut=LENGTH:  #修剪reads 5'/3'端碱基,正数:从开始除移除碱基;负数:从末尾处移除碱基;
-q [5'CUTOFF,]3'CUTOFF, --quality-cutoff=[5'CUTOFF,]3'CUTOFF: #修剪低质量碱基
-l LENGTH, --length=LENGTH: #将reads修剪的最终长度
--trim-n: #修剪reads末端的'N'
-o FILE, --output=FILE: #输出文件
--info-file=FILE:每条reads和与reads匹配的adapter的信息
--too-short-output=FILE: #为reads长度最小值设定阈值筛选reads后,要丢弃的部分输出到文件;长度依据m值设定;   
--too-long-output=FILE:#为reads长度最大值设定阈值筛选reads后,要丢弃的部分输出到文件;长度依据M值设定; 
--untrimmed-output=FILE: #将没有adapter未做修剪的reads输出到一个文件;默认输出到trimmed reads结果文件
--max-n=COUNT:#reads中N的数量,设定整数或小数(N的占比)

双端测序参数
-A ADAPTER:  #第二条reads 3'adapter
-G ADAPTER:#第二条reads 5'adapter
-U LENGTH: #从第二条reads上修剪的长度
-p FILE, --paired-output=FILE: #第二条reads的输出结果
--untrimmed-paired-output=FILE:#第一条reads没有adapter时,将第二条reads输出到文件;默认输出到trimmed reads结果文件   
fastx_trimmer
usage: fastx_trimmer [-h] [-f N] [-l N] [-z] [-v] [-i INFILE] [-o OUTFILE]

version 0.0.6
   [-h]         = This helpful help screen.
   [-f N]       = First base to keep. Default is 1 (=first base).
   [-l N]       = Last base to keep. Default is entire read.
   [-z]         = Compress output with GZIP.
   [-i INFILE]  = FASTA/Q input file. default is STDIN.
   [-o OUTFILE] = FASTA/Q output file. default is STDOUT.

实例:以上步骤都做完之后可以再进行一次质控,看看数据处理的情况是否合理。

/home/user/test/bin/fastx_trimmer -l 170 -i /home/user/test/SRR5489805.fasta -o ./SRR5489805_trimmer.fasta

具体保留多长的reads还是要根据质控的结果来确定,我会尽快将质控结果的讲解分享出来,后面的建库比对改天就只能后面分享。欢迎大家对我的分享进行批评指正!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,569评论 4 363
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,499评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,271评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,087评论 0 209
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,474评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,670评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,911评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,636评论 0 202
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,397评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,607评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,093评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,418评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,074评论 3 237
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,092评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,865评论 0 196
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,726评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,627评论 2 270