COG注释详解

一、 COG简介

COG,即Clusters of Orthologous Groups of proteins。构成每个COG的蛋白都是被假定为来自于一个祖先蛋白,并且因此或者是orthologs或者是paralogs。Orthologs是指来自于不同物种的由垂直家系(物种形成)进化而来的蛋白,并且典型的保留与原始蛋白有相同的功能。Paralogs是那些在一定物种中的来源于基因复制的蛋白,可能会进化出新的与原来有关的功能。请参考文献获得更多的信息。

 

其网址主页为:http://www.ncbi.nlm.nih.gov/COG/。

网页版使用工具网址:http://www.ncbi.nlm.nih.gov/COG/old/xognitor.html。

使用说明文档网址:http://www.nlm.nih.gov/COG/old/COGhelp.html。

其FTP站点为: ftp://ftp.ncbi.nih.gov/pub/COG/。

 

通过观看其主页和说明文档,可以理解为COG是NCBI的数据库。COG的中文释义即“同源蛋白簇”。COG分为两类,一类是原核生物的,另一类是真核生物。原核生物的一般称为COG数据库;真核生物的一般称为KOG数据库。

COG是如何建立的?

COG是通过把所有完整测序的基因组的编码蛋白一个一个的互相比较确定的。在考虑来自一个给定基因组的蛋白时,这种比较将给出每个其他基因组的一个最相似的蛋白(因此需要用完整的基因组来定义COG。注1)这些基因的每一个都轮番的被考虑。如果在这些蛋白(或子集)之间一个相互的最佳匹配关系被发现,那么那些相互的最佳匹配将形成一个COG(注2)。这样,一个COG中的成员将与这个COG中的其他成员比起被比较的基因组中的其他蛋白更相像,尽管如果绝对相似性比较的。最佳匹配原则的使用,没有了人为选择的统计切除的限制,这就兼顾了进化慢和进化快的蛋白。然而,还有一个加的限制就是一个COG必须包含来自于3个种系发生上远的基因组的一个蛋白。

 

COG注释作用:1. 通过已知蛋白对未知序列进行功能注释; 2. 通过查看指定的COG编号对应的protein数目,存在及缺失,从而能推导特定的代谢途径是否存在; 3. 每个COG编号是一类蛋白,将query序列和比对上的COG编号的proteins进行多序列比对,能确定保守位点,分析其进化关系。

 

二 、将序列进行COG分类的步骤

1. COG的ftp里边提供了一个名为myva的文件,该文件里面为COG数据库的蛋白质序列,有192987条。将该序列文件使用使用ncbi-blast-2.2.26+中的blastdb程序制作出一个前缀为cog的蛋白质数据库。

2. 将需要进行COG注释并分类的DNA序列或protein序列分别使用blastx或blastp比对到上一步骤建好的cog数据库中。得出xml的比对结果。

3. 根据上一步骤的比对结果,得出与query序列相似的cog蛋白id。在COG的ftp里面有一个名为whog的文件,该文件中记录着COG数据中绝大部分的蛋白质id以及其所对应的以COG开头的protein编号,同时也记录这COG编号对应的功能分类编号。因此,可以得出query序列注释的COG编号以及其功能分类编号。

4. ftp中还有一个名为fun.txt的文件,该文件记录这COG的功能分类编号,及其对编号的功能描述。

5. 因此,我编写了一个脚本程序用于COG分类注释。该脚本程序名字为cog.pl。输入为所需要进行COG分类的fasta序列文件,得出序列的比对结果和分类统计。

ftp://ftp.ncbi.nih.gov/pub/COG/COG

文件:fun.txt         2 KB         2003/3/2         0:00:00

文件:myva   60217 KB         2003/3/2         0:00:00

文件:myva=gb     3026 KB 2002/9/26       0:00:00

文件:org.txt         4 KB         2003/3/2         0:00:00

文件:pa        769894 KB       2003/3/2         0:00:00

文件:readme       2 KB         2003/4/17       0:00:00

文件:whog 2083 KB 2003/3/5         0:00:00

从03年开始就没有更新了

 

三 、将序列进行KOG分类

 

方法和COG的分类一致。值得注意的是KOG数据中protein的编号是以LSE或TWOG开头的。同样,我编写了一个kog.pl。

 

四 、说明补充

值得说明的是,KOG数据库中蛋白质序列数目为112920条,但是其中有protein编号的只有27887条,占25%。而COG数据库中蛋白质序列条数为192987,其中有COG编号的有129326条,占67%。所以比对结果中,很多序列比对上了KOG数据库,但是没有protein编号;而在比对到COG数据库时会好很多。(这里可以说清楚blast比对的结果数和最终整合完毕之后跟cog注释上的不一样的原因

所以,可以先将序列比对到COG数据库,得出分类数据;然后将没有分类编号的序列挑选出来,再比对到KOG数据库,得出分类数据;然后将两个分类数据进行整合,然后画出COG分类图。

 

五、COG的注释

1,使用Webmga

http://weizhongli-lab.org/metagenomic-analysis

会反馈给你4个结果,output.1和output.2分别是两个非常相近的比对结果,而output.2.family是按照COG的编号排出来的结果,output.2.class是在COG大的分类上的一个统计结果

2,使用陈博士的脚本

mkdir /sam/cog

cd /sam/cog

wget ftp://ftp.ncbi.nih.gov/pub/COG/COG/myva

wget ftp://ftp.ncbi.nih.gov/pub/COG/COG/fun.txt

wget ftp://ftp.ncbi.nih.gov/pub/COG/COG/whog

makeblastdb –in myva –dbtype prot –title cog –parse_seqids –out cog –logfile cog.log

 wget http://www.chenlianfu.com/train/bin/cog_from_xml.pl

wget http://www.chenlianfu.com/train/bin/cog_R.pl

 使用blast

 /sam/blast/bin/blastp -query assembly.orfs.hmm.faa -db /sam/cog /cog -evalue 1e-5 -num_threads 10 -max_target_seqs 5 -outfmt 5 -out assembly.orfs.hmm.blast.xml

-query 输入序列  -db 选择的数据库  -evalue 这个就不说了 -num_threads 服务器使用的cpu个数-max_target_seqs设置最多的目标序列匹配数    -outfmt输出结果的参数  -out输出的文件名

 注意文件或程序的路径,如果没有cd到相应的位置的话,就需要在命令中注明路径

 使用cog_from_xml.pl进行COG分类分析

cog_from_xml.pl cog.xml   #这一步脚本有问题,做不下去

cog_R.pl cog_cog_class_annot.xls cog_out G.lucidum

display cog_out.png

 

cog_db_clean.pl  -myva myva whog >cog_clean.fa

formatdb -p T -o T -i cog_clean.fa;

 

 

3,使用樊博士的脚本

cog_db_clean.pl  并不是所有的COG序列都包含所有的功能注释,所以你需要运行命令,挑选出在COG数据库中有注释的那些序列,脚本下载链接:https://gist.github.com/Buttonwood/96f9a9ef8159ca111a69

cog_db_clean.pl  -myva myva whog >cog_clean.fa

# myva 为61.7M的fasta文件,序列名为>AF0017.1这样的格式;cog_clean.fa文件为51M的fasta文件,序列名为>AF0017.1         COG1250 3-hydroxyacyl-CoA dehydrogenase,结合了whog的信息。

formatdb -p T -o T -i cog_clean.fa;

blast_parser.pl  解析blast输出结果,下载链接:https://github.com/JinfengChen/Scripts/tree/master/bin

blastall -p blastp -b 500 -v 500 -F F -d cog_clean.fa -e 1e-4 -i yourdata.fa -o blast.out;

blast_parser.pl -tophit 1 -topmatch 1 blast.out >blast.best;

这个时候你就可以编写perl与R程序输出类似下面的结果:

 

 

Ps:感谢樊师兄提供的脚本与耐心的解答。

 参考资料:

http://www.chenlianfu.com/?p=366#comments(超赞)

http://www.biosino.org/pages/ncbi-7.htm

http://blog.sina.com.cn/s/blog_83f77c940102ux6u.html(超赞)

 可以参考的文献:

Tatusov et al. (1997).  A genomic perspective on protein families.  Science 278: 631-637.

Koonin et al. (1998).  Beyond complete genomes: from sequence to structure and function.  Curr. Opin. Struct. Biol. 8: 355-363.

Galperin et al. (1999).  Comparing microbial genomes: How the gene set determines the lifestyle.  In Organization of the Prokaryotic Genome,  R.L. Charlebois, Ed. (American Society of Microbiology, Washington, DC) pp. 91-108.

Tatusov et al. (2000).  A genomic perspective on protein families.  Nucleic Acids Res. 28: 33-6.

原文转载自:http://blog.sina.com.cn/s/blog_670445240102uxwy.html

  • 1
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
### 回答1: Cog3dRangeImageHeightCalculatorTool是一个工具,用于计算三维点云数据中每个点的距离。三维点云数据是由激光雷达或深度相机收集的,它包含了空间中的点的信息。 这个工具的作用是根据三维点云数据中的每个点的坐标信息,计算出该点与相机的距离。它可以帮助我们了解每个点相对于相机的距离,从而对点云数据进行更深入的分析和处理。 具体来说,Cog3dRangeImageHeightCalculatorTool使用了一种称为“单应性”的数学原理来计算距离。这个原理基于相机的内外参数,包括相机的焦距、图像平面与相机光心之间的几何关系等。通过将这些参数应用到每个点的坐标上,我们可以计算出该点与相机的距离。 这个工具的优点在于它可以高效地处理大量的点云数据,并且计算速度较快。它还可以处理不同类型的点云数据,包括不同分辨率的数据和不同类型的传感器收集的数据。 需要注意的是,Cog3dRangeImageHeightCalculatorTool只是一个工具,它提供了计算距离的功能。在实际应用中,我们可能还需要其他工具或算法来对计算的结果进行处理和分析,以达到我们的需求。 总结起来,Cog3dRangeImageHeightCalculatorTool是一个用于计算三维点云数据中每个点与相机的距离的工具。通过使用相机的内外参数和每个点的坐标信息,它可以帮助我们了解点云数据的距离分布,从而对数据进行更深入的分析和处理。 ### 回答2: Cog3dRangeImageHeightCalculatorTool是一个用于计算COG(center of gravity,重心)和3D(三维)range image(范围图像)高度的工具。它可以用来分析和测量三维场景中物体的高度信息。 该工具可以基于输入的范围图像数据计算物体的高度。范围图像是通过激光扫描或深度传感器获得的图像,其中每个像素的值代表该像素点到扫描仪的距离。Cog3dRangeImageHeightCalculatorTool根据这些距离信息,通过计算每个像素点的高度来估计物体的高度。 该工具的计算方式是基于物体的几何形状和物体与相机之间的距离关系。通过对范围图像进行分析,工具可以找到物体的上下边缘,并据此计算物体的高度。 使用Cog3dRangeImageHeightCalculatorTool可以帮助我们对三维场景中物体的高度进行量化和分析。例如,在工业制造中,可以用它来检测产品的尺寸和高度是否符合规格要求。在机器人导航中,可以利用该工具来辅助机器人感知并避开障碍物。此外,该工具还可以应用于计算机视觉、三维重建和虚拟现实等领域。 综上所述,Cog3dRangeImageHeightCalculatorTool是一个用于计算物体高度的工具,通过分析范围图像数据和物体的几何形状,可以提供对三维场景中物体高度的估计。它在许多领域中都有广泛的应用,并为我们提供了量化和分析物体高度的手段。 ### 回答3: Cog3dRangeImageHeightCalculatorTool是一个帮助计算和确定3D范围图像高度的工具。它主要用于计算由3D传感器(如激光雷达或深度摄像头)生成的范围图像中每个像素的高度信息。 该工具的原理是通过分析每个像素点的深度值和相对于传感器的位置信息来计算其对应的物体高度。它可以帮助我们了解物体在图像中的垂直距离,从而提供更全面的3D场景感知。 Cog3dRangeImageHeightCalculatorTool的使用方法相对简单。首先,我们需要输入一个包含3D范围图像的文件。然后,工具会对该图像进行处理,并为每个像素点计算其高度信息。最后,我们可以通过查看计算结果来获取相应的高度信息。 通过使用Cog3dRangeImageHeightCalculatorTool,我们可以得到一些有用的信息。首先,我们可以获得物体在垂直方向上的准确位置和高度信息,这对于识别和分析三维场景非常有帮助。其次,我们可以通过比较不同像素点的高度信息来获得物体的表面形状和结构。这些信息有助于更好地理解场景,并在应用领域中发挥重要作用,如自动驾驶、机器人导航、虚拟现实等。 总之,Cog3dRangeImageHeightCalculatorTool是一个实用的工具,可以帮助我们计算和确定3D范围图像中每个像素的高度信息,提供更全面的三维场景感知。它在许多应用领域中都有很大的潜力,并为我们提供了有关物体位置、高度和结构的重要信息。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天道工作室

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值