1、摘要

摘要:我们提出了CAFE(计算分析基因家族进化),这是一个统计分析基因家族进化规模的工具。它使用随机的出生和死亡过程来模拟一个系统发育过程中基因家族大小的进化。对于一个特定的系统发育树,并给定现存物种的基因家族大小,CAFE可以估计全局基因家族的出生率和死亡率,推断所有内部节点上最可能的基因家族大小,确定基因加速损益率的家庭(用并确定哪些分支导致p值较小重要的家庭。)

2、 INTRODUCTION

对全基因组和单基因家族的分析揭示了家族规模的巨大变化,即使是对全基因组和单基因家族的分析也发生了巨大的变化揭示了家族大小的巨大变化,甚至在亲缘关系密切的生物体之间也是如此。此外,基因家族的大收缩和扩张通常归因于自然选择,而这些说法没有统计基础。为了使推论关于两个基因家庭规模变化的方向和大小,以及大尺寸的变化是否真正进化意义重大,我们介绍cafe(基因家族进化的计算分析):一个分析的工具基因家庭规模系统上下文的变化。Hahn et al. (2005);介绍了cafe所采用的概率模型;它使用随机的出生和死亡过程来模拟沿着系统发育树的每个谱系的基因得失。为了对整个系统发育过程进行推断,采用概率图形模型计算了系统发育过程中基因家族大小由父节点向子节点转移的概率。使用图形化模型机制,可以得出推论关于所有祖先物种的基因家族大小。特别是,树中现存分类单元中基因家族大小的说明足以估计祖先基因家族大小(因此也就可以确定每个分支的变化方向),并进行识别,特别是,现存的规范基因家族大小的类群在树上能充分估计祖先的基因家族的大小(因此改变在每个分支的方向),以及识别异常基因家族进化,并违反了一个特定模型的谱系及基因家族。CAFE可以通过一个易于使用的图形界面运行,也可以通过一个命令行版本运行,这两个版本都允许研究人员指定他们希望运行的分析。

3、DESCRIPTION

CAFE的主要输入是一个根和分叉的系统发育树的Newick描述(包括以时间为单位的分支长度)和一个包含现存的类群。数据文件可以由一个家族的数据组成,也可以由指定树的数千个家族组成。数据文件的第一行应该包含现有物种的名称(在Newick中使用),以tab键分隔,没有特定的顺序。随后的每行对应一个基因家族,并包含这些现存物种的制表符分隔的家族大小。如果数据文件中的列的标题与Newick树描述中的任何名称都不对应(Newick树描述可能提供关于基因家族的附加信息),那么这些列将被忽略,并简单地复制到输出文件中。Newick树描述的例子和相应的数据文件可以在在线用户手册中找到。第三个输入是λ,这是在系统发育过程中,每个基因在单位时间内每个基因获得和丢失的概率[CAFE假设基因的出生和死亡的概率相等]。用户可以通过输入一个数值来指定λ,或者让CAFE在数据文件中找到给定基因家族的最大似然值。应该注意的是,估计值λ是输入文件中所有家族的全局最可能值;可以通过单独运行每个家庭计算单个家庭的估计值λ。为了估计最大似然值,CAFE在用户提供的两个数值之间计算该参数的11个等距值的数据的似然值(在命令行版本中,使用的等距值的数量可以更改)。给定λ的初始范围,在后续分析中使用导致最大似然值的值;或者,在计算了λ的最大似然估计值后,可以要求CAFE停止分析。如果最可能的值是CAFE查询的两个最极端值之一,或者给定的初始范围非常大,建议在围绕前一个最可能值的区间内再次运行λ的估计。CAFE输出的日志文件包含所有查询值λ。给定系统发育树、现存物种(数据文件)中的基因家族大小和λ的值,可以使用图形模型计算祖先物种中最可能的家族大小,以及每个家族的大小。CAFE计算这些所谓的维特比赋值,通过比较所有父节点和子节点的估计大小,可以推断每个分支上基因家族大小变化的方向和大小。维特比赋值报告在主输出文件中。日志文件中报告了沿着树的每个分支扩展的平均大小(负值表示所有家族之间的平均收缩),以及树的每个分支上没有变化、扩展或收缩的家族的数量。对于数据文件中的每个基因家族,根据我们的基因家族进化模型,CAFE计算了与现存物种的基因家族大小相关的p值。拥有大量大小上的差异,特别是在亲缘关系密切的物种之间,可能具有较低的p值。低p值的基因家族很有趣,因为大的收缩或扩张可能与自然选择有关,或者与包含多个相关基因的染色体的大量复制或缺失有关。对于那些p值较小的基因家族,识别发生最大变化的树的分支(因此也就是反对模型的地方)是很有意义的。cafe合并三个方法来标识这些分支。虽然这些方法在本质上是不同的,但根据我们的经验,它们在大多数情况下是一致的。第一个方法(' Viterbi ')使用对祖先节点的Viterbi赋值,然后沿着树的每个分支计算从父节点到子节点的转换的p值。第二种方法(“分支切割”)计算如果我们切割树的一个分支,与一个基因家族相关的总p值是否会增加。通过“切割”一个分支,我们意味着移除该分支的父和子家庭大小之间的概率耦合。然后,给定删除一个分支作为模型的树,计算基因家族的p值(对每个分支分别执行此操作)。如果在切割一个分支之后,p值显著增加,那么这个分支可能要为整个模型的整体p值较低负责。第三种方法(“似然比检验”)通过估计进化速率参数l在被调查分支上的单独值,最大限度地提高了基因家族的可能性。模型中有两个参数的似然值与只有一个参数的似然值之比可用于评估沿着单个分支需要额外参数的情况。因此,高值表示分支的进化变化量大于预期

CAFE: a computational tool for the study of gene family evolution的更多相关文章

  1. Calculus on Computational Graphs: Backpropagation

    Calculus on Computational Graphs: Backpropagation Introduction Backpropagation is the key algorithm ...

  2. (译)Calculus on Computational Graphs: Backpropagation

    Posted on August 31, 2015 Introduction Backpropagation is the key algorithm that makes training deep ...

  3. Mathematics for Computer Graphics数学在计算机图形学中的应用 [转]

    最近严重感觉到数学知识的不足! http://bbs.gameres.com/showthread.asp?threadid=10509 [译]Mathematics for Computer Gra ...

  4. Mathematics for Computer Graphics

    Mathematics for Computer Graphics 最近严重感觉到数学知识的不足! http://bbs.gameres.com/showthread.asp?threadid=105 ...

  5. Go 语言相关的优秀框架,库及软件列表

    If you see a package or project here that is no longer maintained or is not a good fit, please submi ...

  6. Awesome Go精选的Go框架,库和软件的精选清单.A curated list of awesome Go frameworks, libraries and software

    Awesome Go      financial support to Awesome Go A curated list of awesome Go frameworks, libraries a ...

  7. 斯坦福CS课程列表

    http://exploredegrees.stanford.edu/coursedescriptions/cs/ CS 101. Introduction to Computing Principl ...

  8. 七种常见的核酸序列蛋白编码能力预测工具 | ncRNAs | lncRNA

    注:这些工具的应用都是受限的,有些本来就是只能用于预测动物,在使用之前务必用ground truth数据来测试一些.我想预测某一个植物的转录本,所以可以拿已经注释得比较好的拟南芥来测试一下.(测试的结 ...

  9. 32 Profiling Go Programs 分析go语言项目

    Profiling Go Programs  分析go语言项目 24 June 2011 At Scala Days 2011, Robert Hundt presented a paper titl ...

随机推荐

  1. python爬虫解析页面数据的三种方式

    re模块 re.S表示匹配单行 re.M表示匹配多行 使用re模块提取图片url,下载所有糗事百科中的图片 普通版 import requests import re import os if not ...

  2. js+css jQuery实现页面后退执行 & 遮罩弹框

    JS部分 <script src="http://libs.baidu.com/jquery/2.0.0/jquery.js"></script> < ...

  3. 关于各种BUF源语的研究

    关于各种BUF源语的研究 资料来源: 单端信号需要用到的BUF 关于这些源语的约束: 增大驱动电流 关于管脚的上拉与下拉约束: ODDR的两种操作模式 关于ODDR输出时钟的应用 为什么ODDR需要这 ...

  4. VUE打包上线优化

    1.将vue vue-router vuex 尽量使用CDN externals: { 'vue':'Vue', 'vue-router':'VueRouter', 'vuex':'Vuex', 'a ...

  5. mysql ibdata1

    ibdata1是什么? Mysql ibdata1即Innodb data1缩写,是innodb引擎的表空间,用于存放 数据字典Data dictionary:  只读的表,存储对象的相关信息,如占用 ...

  6. Scrapy实战篇(四)爬取京东商城文胸信息

    创建scrapy项目 scrapy startproject jingdong 填充 item.py文件 在这里定义想要存储的字段信息 import scrapy class JingdongItem ...

  7. activity--生命周期总结

    22.Android禁止屏幕旋转 & 旋转屏幕时保持Act内容? 21.旋转屏幕Act执行的生命周期方法? 12.ActA与 ActB互相跳转生命周期情况? 11.Act的生命周期? ==== ...

  8. DataBaseDaoAbstract

    import java.lang.reflect.Method; import java.math.BigDecimal; import java.sql.PreparedStatement; imp ...

  9. RE validator

    package com.office.utility;   import java.util.regex.Pattern;   /**  * 校验器:利用正则表达式校验邮箱.手机号等  *  * @a ...

  10. 高性能mysql 第六章查询性能优化 总结(上)查询的执行过程

    6  查询性能优化 6.1为什么查询会变慢 这里说明了的查询执行周期,从客户端到服务器端,服务器端解析,优化器生成执行计划,执行(可以细分,大体过程可以通过show profile查看),从服务器端返 ...