这篇文章主要讲解了“如何从FASTQ转换得到uBAM格式”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何从FASTQ转换得到uBAM格式”吧!
创新互联是专业的万山网站建设公司,万山接单;提供网站制作、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行万山网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
二代测序平台产生的数据通常用fastq格式进行存储,fastq 存储了我们最关心的序列和碱基质量的信息。就测序而言,这样的信息当然是足够了。但是对于分析而言,还缺少了一点信息。
给你一个fastq文件,你最多可以看出来样本名,测序平台,测序读长等基本信息,如果想知道测序类型(是WES, WGS 还是RNA-seq), 样本的采样信息,样本的分组信息,这些信息从fastq 文件是无法得到的。这些实验相关的数据,称之为metadata
。
uBAM
和FASTQ
相比,处理存储了序列和碱基质量信息之外,还可以存储metadata
信息。
GATK4
中,数据预处理部分的示意图如下
可以看到,对于原始数据,有两种格式,一种就是我们常见的FASTQ
; 另外一种就是uBAM
。官方更加推荐使用uBAM
格式。
如何从FASTQ
转换得到uBAM
格式呢?我们需要借助picatd
工具。picard
提供了一个FastqToSam
功能,可以将序列转换成ubam
格式。
基本用法如下:
java -jar picard.jar FastqToSam
F1=sampleA_R1.fastq.gz
F2=sampleA_R2.fastq.gz
PL=illumina
SM=sampleA
LB=sampleA
RG=sampleA
O=sampleA.ubam
F1
和F2
指定原始的fastq格式的数据,对于双端测序,同时指定F1和F2, 对于单端测序,指定F1就可以了。PL
代表platform, 指定测序平台,取值包含 illumina 和 solid 两种;SM
代表 sample name, 指定样本名称;LB
代表library name, 指定文库名称,RG
代表read group, 指定reads group的名字,这两个参数一般和样本名相同就可以了。
ubam
从名称上也可以看出来,是属于bam
格式的,所以其内容也分成了头部和正文两个部分。
samtools view -H sampleA.ubam
@HD VN:1.5 SO:queryname
@RG ID:sampleA SM:sampleA LB:sampleA PL:illumina
第一行是标准的bam
文件头部的声明,第二行的@RG
就是转换过程中添加的几种metadata
信息。
samtools view sampleA.ubam
由于列数较多,这里我截取了前面几列
每一行代表一条序列,序列ID相同的实际上是R1和R2端,从第二列的flag可以区分R1和R2端。
samtools flags 77
0x4d 77 PAIRED,UNMAP,MUNMAP,READ1
samtools flags 141
0x8d 141 PAIRED,UNMAP,MUNMAP,READ2
77对应R1端, 141对应R2端。
第三列的*
代表没有比对上染色体,这就是unmapped bam
的由来。
通过FastqToSam
可以从fastq文件得到ubam
文件,picard 还提供了SamtoFastq
命令,从bam 文件得到fastq 文件
用法如下:
java -jar picard.jar SamToFastq
I=sampleA.ubam
F=sampleA_R1.fastq
F2=sampleA_R2.fastq
I
代表input, 指定输入的bam 文件;F和F2 指定输出的fastq 文件。
感谢各位的阅读,以上就是“如何从FASTQ转换得到uBAM格式”的内容了,经过本文的学习后,相信大家对如何从FASTQ转换得到uBAM格式这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是创新互联,小编将为大家推送更多相关知识点的文章,欢迎关注!