生物信息学常见数据格式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了生物信息学常见数据格式相关的知识,希望对你有一定的参考价值。

参考技术A

fasta 是一种 基于文本 用于表示 核酸序列 多肽序列 的格式。其中核酸或氨基酸均以单个字母来表示,且允许在序列前添加序列名及注释。

特征:2部分-- id行 序列行
> id行以“>”开头, 后跟序列名称&序列描述。有时候会包含注释信息
> 序列行一个字母表示一个 碱基/氨基酸 (A、T、C、G、N (N表示不知道是什么)/20种常见氨基酸)。序列中允许空格,换行,空行,直到下一个“>”,表示该序列结束。

高通量测序(如Illumina NovaSeq等测序平台)得到的原始图像数据文件,经碱基识别(Base Calling)分析转化为原始测序序列(Sequenced Reads),我们称之为Raw Data或Raw Reads,结果以FASTQ(简称为fq)文件格式存储,其中包含测序序列(Reads)的 序列信息 以及其对应的 测序质量信息 。测序样品中真实数据随机截取结果如下图:

特征: 每4行代表一个reads信息

fastq格式是由fasta (记录id和序列) 和QUAL (记录id和碱基质量) 合并而来。fastq文件第三行往往是个+,其实就是和第一行一样都是id。

第四行碱基质量值
碱基质量值(Quality Score或Q-score)是碱基识别(Base Calling)出错的概率的整数映射。通常使用的碱基质量值Q公式[1]为: Q=-10 * log10P 。其中P为碱基识别出错的概率。下表给出了碱基质量值与碱基识别出错的概率的对应关系。

碱基质量值越高表明碱基识别越可靠,准确度越高。比如,对于碱基质量值为Q20的碱基识别,100个碱基中有1个会识别出错,以此类推。

碱基质量值+33(前32个不是单个值),查表找到对应ASCII码

fastq与fasta文件转换

GFF,全称为Generic Feature Format,主要用来描述 基因的结构与功能信息 ,对基因组进行注释。记录序列中转录起始位点、基因、外显子、内含子等组成元件在染色体中的位置信息。现在用得比较多的是第3版,即gff3。gff是一个三级嵌套结构。格式文件为文本文件,分为9列,以TAB分开。控制符使用RFC 3986 Percent-Encoding 编码。比如:%20 代表着ASCII的空格。

gff文件一共有9列:

第九列的详解

GTF全称为gene transfer format,主要是用来对基因进行注释。现在用得比较多的是第2版,即gtf2。gtf文件也是分为9列,前八个字段与GFF相同(有一些小的差别),重点在第九列的不同。

两种文件差异比较:

bam文件和sam文件内容其实是一样的,只是bam是二进制的压缩文件,占内存空间更小。需要通过特定的软件来进行查看。(sam文件可以直接使用 less -S 查看;bam文件使用 samtools view -h xxx.bam | less -S 查看)

SAM(The Sequence Alignment / Map format)格式,即序列比对文件的格式,详细介绍文档: http://samtools.github.io/hts-specs/SAMv1.pdf

SAM文件由两部分组成,头部区和主体区,都以tab分列。
头部区 :以’@\'开始,体现了比对的一些总体信息。比如比对的SAM格式版本,比对的参考序列,比对使用的软件等。
主体区 :比对结果,每一个比对结果是一行,有11个主列和一个可选列。

头部区:

@HD VN:1.0 SO:unsorted (排序类型)
头部区第一行:VN是格式版本;SO表示比对排序的类型,有unknown(default),unsorted,queryname和coordinate几种。samtools软件在进行行排序后不能自动更新bam文件的SO值,而picard却可以。
@SQ SN:contig1 LN:9401 (序列ID及长度)
参考序列名,这些参考序列决定了比对结果sort的顺序,SN是参考序列名;LN是参考序列长度;每个参考序列为一行。
例如:@SQ SN:NC_000067.6 LN:195471971
@RG ID:sample01 (样品基本信息)
Read Group。1个sample的测序结果为1个Read Group;该sample可以有多个library的测序结果,可以利用bwa mem -R 加上去这些信息。
例如:@RG ID:ZX1_ID SM:ZX1 LB:PE400 PU:Illumina PL:Miseq
ID:样品的ID号 SM:样品名 LB:文库名 PU:测序以 PL:测序平台
这些信息可以在形成sam文件时加入,ID是必须要有的后面是否添加看分析要求
@PG ID:bowtie2 PN:bowtie2 VN:2.0.0-beta7 (比对所使用的软件及版本)
例如:@PG ID:bwa PN:bwa VN:0.7.12-r1039 CL:bwa sampe -a 400 -f ZX1.sam -r @RG ID:ZX1_ID SM:ZX1 LB:PE400 PU:Illumina PL:Miseq …/0_Reference/Reference_Sequence.fa ZX_HQ_clean_R1.fq.sai ZX_HQ_clean_R2.fq.sai …/2_HQData/ZX_HQ_clean_R1.fq …/2_HQData/ZX_HQ_clean_R2.fq
这里的ID是bwa,PN是bwa,VN是0.7.12-r1039版本。CL可以认为是运行程序@RG是上面RG表示的内容,后面是程序内容,这里的@GR内容是可以自己在运行程序是加入的

主体部分介绍:

主体部分有11个主列和1个可选列

FLAG详解: http://broadinstitute.github.io/picard/explain-flags.html
例如:想要查看FLAG 99是什么意思:samtools flags 99

CIGAR详解
CIGAR string,简要比对信息表达式(Compact Idiosyncratic Gapped AlignmentReport),其以参考序列为基础,使用数字加字母表示比对结果,比如3S6M1P1I4M,前三个碱基被剪切去除了,然后6个比对上了,然后打开了一个缺口,有一个碱基插入,最后是4个比对上了,是按照顺序的,字母的含义如下

sam/bam文件查看
samtools工具: http://www.htslib.org/doc/samtools.html
Samtools常用命令的总结:
https://www.bioinfo-scrounger.com/archives/245/
https://www.cnblogs.com/xiaofeiIDO/p/6805373.html

参考: sam格式文件解读

《Python生物信息学数据管理》高清中文版PDF+英文版PDF+源代码学习

资源链接:https://pan.baidu.com/s/15W1jfylzBaR9debSJns5UA
《Python生物信息学数据管理》中文版PDF,带书签,337页。
《Python生物信息学数据管理》英文版PDF,带书签,556页。
两版对比学习。
配套源代码。
生物信息学经典资料,解决生物学问题,通过“编程技法”的形式,涵盖尽可能多的组织、分析、表现结果的策略。在每章结尾都会有为生物研究者设计的编程题目,适合教学和自学。由六部分组成:Python语言基本介绍,语言所有成分介绍,高级编程,数据可视化,生物信息通用包Biopython,最后给出20个"编程秘笈”,范围涵盖了从二级结构预测、多序列比对到蛋白质三维结构的广泛话题。附录包括了大量的生物信息常用资源的信息。
其中,中文版如图:
技术分享图片
技术分享图片

以上是关于生物信息学常见数据格式的主要内容,如果未能解决你的问题,请参考以下文章

生物信息学书籍分享

用Python实现一个爬虫爬取ZINC网站进行生物信息学数据分析

《Python生物信息学数据管理》高清中文版PDF+英文版PDF+源代码学习

生物信息技术专业怎么样_就业方向_主要学啥

如何利用生物信息学筛选目的lncrna

常用生物信息学在线分析工具汇总(记录中...)