买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
摘要:本发明公开了一种gtf文件解析方法,其特征在于,包括如下步骤:初始化步骤,基因转录本基本结构读取步骤,基因转录本分解步骤,基因转录本基本结构解析步骤。本发明还公开了一种gtf文件解析工具。本发明的有益效果在于:以基因或转录本为单位:本模块可以以基因或转录本为单位对gtf文件进行解析,将基因或转录本的子结构添加到解析结果的子节点中,使用者能对整个基因或转录本进行操作,更能满足生物信息分析的需求。占用内存少:先读取完一个基因转录本所有行再解析,处理完这个基因转录本后相应的内存就会被释放,不需要占用很多内存空间。功能丰富:可根据基因转录本ID或name进行查找,多条件筛选基因转录本基本结构,根据子结构获得基因所在位置,获得基因外显子覆盖长度等功能。
主权项:1.一种gtf文件解析方法,其特征在于,包括如下步骤:初始化步骤:从参数中获取gtf文件或句柄,并初始化一个gtf_parser对象;基因转录本基本结构读取步骤:针对基因转录本基本结构采用不同的读取方法,如果是基因,则按行读取一个基因的所有行,若当前读取行与当前解析的基因的“gene_id”不同时,则回退一行;如果是转录本,则按行读取一个转录本的所有行,当当前读取行与当前解析的转录本的“transcript_id”不同时,则回退一行;如果是基本结构,则读取一行;基因转录本分解步骤:如果是基因,则将除结构类型为“gene”以外的的所有行按不同的转录本进行分解,然后再将每个转录本的所有行按基本结构进行分解;如果是转录本,则将除结构类型为“transcript”以外的所有行按基本结构进行分解;基因转录本基本结构解析步骤:如果是基因,则对基因的每个转录本的每个基本结构进行解析,获取其信息,并添加到相应的转录本子节点中,再将转录本添加到基因的子节点中,返回基因对象;如果是转录本,则对转录本的每个基本结构进行解析,获取其信息,并添加到转录本的子节点中,返回转录本对象;如果是基本结构,则直接解析,返回基本结构对象。
全文数据:一种gtf文件解析方法及工具技术领域本发明涉及生物信息领域,具体涉及一种gtf文件解析方法及工具。背景技术生物信息分析中常会用到一种gtf格式的文件,该文件用于记录基因结构信息。文件每一行记录一个结构如基因,转录本,外显子,内含子,5‘UTR,3’UTR,mRNA,CDS等的信息。一行分为九列,分别代表了结构的序列名sequencename,来源source,结构类型type,起始位点startsite,终止位点endsite,分数score,方向strand,相位frame,属性attribute。属性是多个以key"value";形式组成的键值对,所有行的属性中必须包含“gene_id”和“gene_name”键,除类型为基因以外的行的属性中必须包含“transcript_id”和“transcript_name”键。Gtf文件常被用于进行与基因结构相关的分析,如基因转录本表达量计算,新转录本的发现,可变剪切分析,基因结构优化等,是生物信息分析最常用的文件格式之一。本模块和工具用于解析gtf文件,并提供一些处理gtf文件的方法。而现有的gtf解析工具和模块存在以下几点缺陷:1以基本结构为单位:现在的gtf文件解析工具大都以行为单位进行解析,如perl模块Bio::GFF3::LowLevel和Bio::FeatureIO。但一行中只包含一个结构的信息,而生物信息分析往往需要以一个完整的基因或转录本为单位,使用者还需要额外对解析结果进行筛选和提取信息,或者重新组织其结构。2占用内存大:想获取一个基因转录本的所有子结构可能需要将整个文件读取完之后才能提取到,而一个gtf文件可能达到几G的大小,读取并解析一个gtf文件所需的内存空间可能会非常大,造成内存溢出的情况。3功能单一:现在的gtf文件解析工具往往只有写gtf文件和取结构信息的功能,不能满足分析需求。如果需要对gtf文件进行一些常见处理,使用者需要另外写脚本。发明内容为了克服现有技术所存在的上述缺陷,本发明的目的之一在于提供一种gtf文件解析方法。本发明的目的之二在于提供一种gtf文件解析工具。为了实现本发明的目的之一,所采用的技术方案是:一种gtf文件解析方法,包括如下步骤:初始化步骤:从参数中获取gtf文件或句柄,并初始化一个gtf_parser对象。基因转录本基本结构读取步骤:针对基因转录本基本结构采用不同的读取方法。如果是基因,则按行读取一个基因的所有行,若当前读取行与当前解析的基因的“gene_id”不同时,则回退一行;如果是转录本,则按行读取一个转录本的所有行,当当前读取行与当前解析的转录本的“transcript_id”不同时,则回退一行;如果是基本结构,则读取一行。基因转录本分解步骤:如果是基因,则将除结构类型为“gene”以外的的所有行按不同的转录本进行分解,然后再将每个转录本的所有行按基本结构进行分解;如果是转录本,则将除结构类型为“transcript”以外的所有行按基本结构进行分解。基因转录本基本结构解析步骤:如果是基因,则对基因的每个转录本的每个基本结构进行解析,获取其信息,并添加到相应的转录本子节点中,再将转录本添加到基因的子节点中,返回基因对象;如果是转录本,则对转录本的每个基本结构进行解析,获取其信息,并添加到转录本的子节点中,返回转录本对象;如果是基本结构,则直接解析,返回基本结构对象。为了实现本发明的目的之二,所采用的技术方案是:一种gtf文件解析工具,包括查询模块、过滤模块、补充模块、总结模块。所述的查询模块是:根据一个或多个genetranscript的idname对gtf文件进行查询,返回相应gtf行。所述的过滤模块是:根据序列名,来源,结构类型,起始位点,终止位点,分数,方向,相位,属性,子结构数目等方面进行筛选。所述的补充模块是:判断是否gtf文件缺乏结构类型为”gene”或“transcript”的行,若判断为是,则根据基本结构的信息将这两种行补充齐全。所述的总结模块是:对gtf文件基因数目,转录本数目,外显子数目,每基因平均转录本数目,每转录本平均外显子数目,序列名,来源,结构类型,方向,属性的各键所占分布比例进行统计。本发明的主要创新点在于:以基因或转录本为单位:本模块可以以基因或转录本为单位对gtf文件进行解析,将基因或转录本的子结构添加到解析结果的子节点中,使用者能对整个基因或转录本进行操作,更能满足生物信息分析的需求。占用内存小:本发明的实现方式是先读取完一个基因转录本所有行再解析,处理完这个基因转录本后相应的内存就会被释放,不需要占用很多内存空间。功能丰富:可根据基因转录本ID或name进行查找,多条件筛选基因转录本基本结构,根据子结构获得基因所在位置,获得基因外显子覆盖长度等功能。附图说明图1为本发明的流程示意图。具体实施方式以下通过实施例对本发明作进一步的说明,但这些实施例不得用于解释对本发明的限制。实施例为使用本发明筛选参考基因组结构注释gtf文件中1号染色体上,来源为havana数据库,转录本数目小于3的基因。在初始化步骤中,接收用户输入的gtf文件,初始化一个gtf_parser对象。在基因转录本基本结构读取步骤中,在本发明实施例中,采用按基因读取的方式,按行读取一个基因的所有行,当前读取行与当前解析的基因的“gene_id”不同时,则回退一行。在基因转录本分解步骤中,在本发明实施例中,将除结构类型为“gene”以外的的所有行按不同的转录本进行分解,然后再将每个转录本的所有行按基本结构进行分解。在基因转录本基本结构解析步骤中,在本发明实施例中,对基因的每个转录本的每个基本结构进行解析,获取其信息,并添加到相应的转录本子节点中,再将转录本添加到基因的子节点中,返回基因对象。在基本筛选步骤中,在本发明实施例中,调用基本筛选功能对基因对象进行判断,如果基因对象的序列名为1号染色体,并且来源为havana数据库,则进入下一步,否则进入下一个基因的读取步骤。在高级筛选步骤中,在本发明实施例中,调用高级筛选功能对基因对象进行判断,通过length函数计算基因对象的子节点列表中的转录本数目,如果转录本的数目小于3,则返回该基因对象,否则进入下一个基因的读取步骤。在打印步骤中,如果获取到返回的基因对象,则打印该基因的gtf内容。
权利要求:1.一种gtf文件解析方法,其特征在于,包括如下步骤:初始化步骤:从参数中获取gtf文件或句柄,并初始化一个gtf_parser对象;基因转录本基本结构读取步骤:针对基因转录本基本结构采用不同的读取方法,如果是基因,则按行读取一个基因的所有行,若当前读取行与当前解析的基因的“gene_id”不同时,则回退一行;如果是转录本,则按行读取一个转录本的所有行,当当前读取行与当前解析的转录本的“transcript_id”不同时,则回退一行;如果是基本结构,则读取一行;基因转录本分解步骤:如果是基因,则将除结构类型为“gene”以外的的所有行按不同的转录本进行分解,然后再将每个转录本的所有行按基本结构进行分解;如果是转录本,则将除结构类型为“transcript”以外的所有行按基本结构进行分解;基因转录本基本结构解析步骤:如果是基因,则对基因的每个转录本的每个基本结构进行解析,获取其信息,并添加到相应的转录本子节点中,再将转录本添加到基因的子节点中,返回基因对象;如果是转录本,则对转录本的每个基本结构进行解析,获取其信息,并添加到转录本的子节点中,返回转录本对象;如果是基本结构,则直接解析,返回基本结构对象。2.如权利要求1所述的一种gtf文件解析工具,其特征在于,包括查询模块、过滤模块、补充模块、总结模块:所述的查询模块是:根据一个或多个genetranscript的idname对gtf文件进行查询,返回相应gtf行;所述的过滤模块是:根据序列名,来源,结构类型,起始位点,终止位点,分数,方向,相位,属性,子结构数目等方面进行筛选;所述的补充模块是:判断是否gtf文件缺乏结构类型为”gene”或“transcript”的行,若判断为是,则根据基本结构的信息将这两种行补充齐全;所述的总结模块是:对gtf文件基因数目,转录本数目,外显子数目,每基因平均转录本数目,每转录本平均外显子数目,序列名,来源,结构类型,方向,属性的各键所占分布比例进行统计。
百度查询: 南京派森诺基因科技有限公司 一种gtf文件解析方法及工具
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。