gff文件_如何提取gff文件中的基因注释信息

gff文件_如何提取gff文件中的基因注释信息原标题 如何提取 gff 文件中的基因注释信息 gff3 格式注释文件是最常见的基因注释 https archive broadinstitu org annotation argo help gff3 html 简单来说 gff3 是以 tab 分隔的文本文件 共有 9 列 对应信息如下 1 seqnameThena Typicallyach

原标题:如何提取gff文件中的基因注释信息

gff3格式注释文件是最常见的基因注释,(https://archive.broadinstitute.org/annotation/argo/help/gff3.html)

简单来说,gff3是以tab分隔的文本文件,共有9列,对应信息如下:

1、seqname

The name of the sequence. Typically a chromosome or a contig. Argo does not care what you put here. It will superimpose gff features on any sequence you like.

2、source

The program that generated this feature. Argo displays the value of this field in the inspector but does not do anything special with it.

3、feature

The name of this type of feature. The official GFF3 spec states that this should be a term from the SOFA ontology, but Argo does not do anything with this value except display it.

4、start

The starting position of the feature in the sequence. The first base is numbered 1.

5、end

The ending position of the feature (inclusive).

6、score

A score between 0 and 1000. If there is no score value, enter “.”.

7、strand

Valid entries include ‘+’, ‘-‘, or ‘.’ (for don’t know/don’t care).

8、frame

If the feature is a coding exon, frame should be a number between 0-2 that represents the reading frame of the first base. If the feature is not a coding exon, the value should be ‘.’. Argo does not do anything with this field except display its value.

9、GFF3: grouping attributes

Attribute keys and values are separated by ‘=’ signs. Values must be URI encoded.quoted. Attribute pairs are separated by semicolons. Certain, special attributes are used for grouping and identification (See below). This field is the one important difference betweenGFF flavor

(https://archive.broadinstitute.org/annotation/argo/help/gff.html).

在进行生物信息分析的时候,常需要把gene的注释信息(第9列)提取出来附加到差异基因或目的基因的表格结果中,但第9列的注释信息通常较多,且不同基因含部分注释信息不全部一致,一般我们只需要部分重要的a信息,如Dbxref、gene_biotype、deion。

本文以ncbi上发布的人类GRCh38.p7版本注释文件为示例,使用awk命令进行该操作。

(https://www.gnu.org/software/gawk/manual/gawk.html)

1、下载目的物种注释文件:

(ftp://ftp.ncbi.nlm.nih.gov/genomes/all/GCF_000001405.33_GRCh38.p7/GCF_000001405.33_GRCh38.p7_genomic.gff.gz)

然后对GCF_000001405.33_GRCh38.p7_genomic.gff.gz进行解压操作,

得到解压文GCF_000001405.33_GRCh38.p7_genomic.gff;

2、查看第9列有哪些注释信息:

$ awk ‘BEGIN{FS=OFS=”\t”} $3==”gene”{split($9, a, “;”); for(i in a){split(a[i], b, “=”); if(++c[b[1]]==1) print b[1]}}’ GCF_000001405.33_GRCh38.p7_genomic.gff

运行显示结果有:

ID、Dbxref、Name、deion

gbkey、gene、gene_biotype、pseudo、gene_synonym、partial、start_range、end_range

exception、Note

然后使用以下命令查看gff3文件中的结果:

$ awk -F “\t” ‘$3==”gene”{print $9}’ GCF_000001405.33_GRCh38.p7_genomic.gff | cat -n | less

可以看到

gff文件_如何提取gff文件中的基因注释信息

3、下面使用awk进行基因注释信息提取(以提取Dbxref、gene_biotype、deion信息为例):

$ awk ‘BEGIN{FS=OFS=”\t”} $3==”gene”{print $0}’ GCF_000001405.33_GRCh38.p7_genomic.gff |

sed ‘s/;/\t/g’ |

awk ‘BEGIN{FS=OFS=”\t”} {for(i=1; i<=NF; i++){split($i, a, “=”);

b[a[1]]=a[2]}} {print b[“Name”],b[“Dbxref”],b[“gene_biotype”],b[“deion”]}

{split(“”, b, “:”)}’

终端显示的提取信息(tab分隔,依次为Name、Dbxref、gene_biotype、deion):

gff文件_如何提取gff文件中的基因注释信息

说明:部分基因不包含某些注释信息,如LOC基因没有deion信息,则在对应列为空字符。

4、对应终端打印的提取信息,可以添加表头和生成文件,同时对应部分出现在多个染色体的基因在第1列会重复,请对3中的结果进行以下操作即可:

$ sed ‘1i Name\tDbxref\tgene_biotype\tdeion’ | awk -F “\t” ‘++a[$1]==1’返回搜狐,查看更多

责任编辑:

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/232662.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 运筹学单纯形法求解线性规划问题_运筹学单纯形法计算步骤

    运筹学单纯形法求解线性规划问题_运筹学单纯形法计算步骤线性规划是研究在一组线性不等式或等式约束下使得某一线性目标函数取最大(或最小)的极值问题。

    2022年8月6日
    9
  • 六大算法之动态规划_动态规划求解最大子数组

    六大算法之动态规划_动态规划求解最大子数组一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?示例 1:输入:m = 3, n = 7输出:28示例 2:输入:m = 3, n = 2输出:3解释:从左上角开始,总共有 3 条路径可以到达右下角。向右 -> 向下 -> 向下向下 -> 向下 -> 向右向下 -> 向右 -&gt

    2022年8月9日
    7
  • 蓝桥杯题目 计算后续日期

    蓝桥杯题目 计算后续日期蓝桥杯题目计算后续日期题目描述我们经常要计算 从今天往后 N 天之后是哪一天 哪年哪月哪日 现在我们就可以编写一个程序 推算指定日期之后的第 N 天是什么日期 输入输入有多组 每组测试用例有一行 包括四个整数 分别表示年 月 日和第 N 天 输出对于每组测试用例 输入由一行组成 表示 年月日 N 天后的 的年 月 日样例输入样例输出 2012

    2025年8月24日
    3
  • Otacle表查询

    Otacle表查询

    2021年12月10日
    59
  • 离线数仓和实时数仓架构与设计

    离线数仓和实时数仓架构与设计前言:离线数仓和实时数仓架构与设计讲解离线数仓和实时数仓架构与设计一、数仓架构演变(场景驱动)二、离线大数据架构三、离线数仓分层四、离线大数据架构典型案例1、Lambda架构1.Lambda架构2.Lambda架构进一步了解3.Lambda架构典型案例4.Lambda架构典型案例(有赞广告团,基于Druid)5.Lambda架构存在的问题2、Kappa架构1.Kappa架构典型案例2.Kappa架构典型案例(一Kylin为例)3.Kappa架构的重新处理过程3、Lambda架构vsKappa架构的对比

    2022年5月10日
    47
  • 车用TVS管 SM8S系列 国产替代

    车用TVS管 SM8S系列 国产替代汽车电子产品用TVS瞬态抑制二极管,首要条件就是器件要符合AEC-Q101标准,满足ISO-7637-2测试标准。目前业内比较常用的汽车级TVS二极管功率6600W,DO-218AB封装,工作电压10V-48V,不同品牌厂商对其型号命名是有差异的,比如力特(Littelfuse)是SLD8S系列,威世(Vishay)是SM8S系列,东沃(DOWO)是SM8S系列……具体型号如下:·SLD8S系列(Littelfuse品牌)型号大全:SLD8S10A、SLD8S11A、SLD8S12A、SLD8S13A

    2022年9月23日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号