这是一篇阅读笔记。
原文 An Introduction to Sequence Similarity (“Homology”) Searching by William R. Pearson( 原文地址),作者是FASTA格式的发明者之一。

同源 Homology

定义

In biology, homology is similarity due to shared ancestry between a pair of structures or genes in different taxa (wikipedia).

同源 (Homology) = 共同进化祖先(Common evolutionary ancestry)
只要有共同祖先,无论基因序列、其编码蛋白质的结构、功能是什么,都可看作是同源的。

为什么要寻找同源基因

一旦发现同源序列,就可以通过多序列比对建立更准确的比对,为后续的表型预测和进化分析奠定基础。

识别同源序列的策略

相似性搜索 (similarity searching)
序列相似性搜索可以通过检测过高的相似性来识别同源蛋白质或基因:当两个序列的相似性超过偶然的预期时,我们推断这两个序列存在同源性。 当观察到过高的相似性时,最简单的解释是,这两个序列不是独立出现的,它们起源于一个共同的祖先。
所以这是统计学意义上的同源性,显著的相似性一定程度上反映了同源性。

需要注意的是同源性与相似性是两个不同的概念!
两条高度相似的序列可能不存在同源性;同样的,同源序列的相似性也可能很低。例如两条同源序列的相似性比对结果不显著,但如果它们在结构上相似性上显著,或者它们都与第三条序列的相似性显著,那么它们显然是同源序列。 因此,当相似性搜索发现统计学上显着的匹配时,我们可以放心地推断出这两个序列是同源的。 但是,如果在数据库中找不到统计上显着的匹配项,则不能确定没有同源物。

常见的序列比对工具,如BLAST, FASTA,HMMER等在算法上尽量减少假阳性(false positives, non-homologs with significant scores; Type I errors)的发生,但对假阴性(false negatives, homologs with non-significant scores; Type II errors)没有约束。

如果在InterPro和Pfam等域注释库中没有找到注释的蛋白质域,那是因为查询序列与已知的同源序列的同源关系太远。

期望(EEE)的计算公式:
E=kmne−λSE = kmne^{-\lambda S} E=kmne−λS
EEE:期望值,即分数为S时,期望的高分序列(HSP)出现的数量 ;
λ,k\lambda ,kλ,k:常数(Karlin Altschul statistics);
mmm:查询序列长度;
nnn:数据库序列的长度。

期望值取决于数据库的大小,通过对比拥有10,000,000个序列数据库得到的e值比只有100,000个序列的数据库中找到相同分数时的e值低100倍。但并不是说在大的数据库中找到的序列是同源的,而小的数据库中找到的序列不是同源的。

蛋白质/蛋白质比对相比,DNA/DNA序列比对比可能更不容易发现同源性。蛋白质(或者翻译后的DNA)相似性搜索要比DNA/DNA搜索敏感得多。 经过200-400亿年的演化后,DNA:DNA比对比对很少能检测到同源性,而对于蛋白质/蛋白质比对能检测到25亿年前的共同祖先。
此外,DNA/DNA比对不如蛋白质/蛋白质准确。E值<0.001的蛋白质/蛋白质比对可以可靠地推断同源性,DNA/DNA期望值<10e-6经常是偶然发生的,一般阈值设为10e-10。提高DNA序列搜索灵敏度的最有效方法是使用翻译的DNA/蛋白质比对,例如BLASTx和FASTX产生的比对,​​而不是DNA/DNA比对。

生信笔记:序列同源性、相似性相关推荐

  1. linux在生信的作用,【生信笔记】右键菜单打开WSL功能方法简介

    在人工智能以及生物信息学发展迅速的现在,充分掌握相关技术是非常重要的,而由于系统的差异,导致很多软件需要在Linux或者Mac OS上运行,长期以来,在Windows系统上解决这一难题的方式是安装虚拟 ...

  2. 生信笔记 | 探索PubMed数据库文献

    第一个问题:研究最热门的基因是什么 在NCBI的ftp里面关于人的一些基因信息, 在 :ftp://ftp.ncbi.nlm.nih.gov//gene 下载即可! 其中 gene2pubmed.gz ...

  3. 【生信笔记】python实现DNA反向互补序列的6种方法

    文章目录 1 写在前面的絮絮叨叨 2 反向序列函数 3 互补序列函数 互补序列方法1:用字典dictionary 互补序列方法2:python3 translate()方法 互补序列方法3:最原始方法 ...

  4. 生信笔记:系统进化树的分类

    这是一篇阅读笔记,原文刊载于Digital Atlas of Ancient Life网站.原文链接 建立系统进化树的意义 由于林奈氏分类法出现于进化的概念没有被广泛接受的年代,所以系统发育分析可以用 ...

  5. 生信笔记 | 自定义GSEA分析中的gmt格式文件

    在GSEA分析中,在MSigDB(Molecular Signatures Database)数据库中定义了很多基因集,下载的基因集是gmt格式文件.下载的gmt格式文件,打开后可以看见是下面这个样子 ...

  6. 生信笔记 | 文本挖掘的一般流程

    一.文本挖掘的一般过程 参考: http://www.sthda.com/english/wiki/text-mining-and-word-cloud-fundamentals-in-r-5-sim ...

  7. 生信笔记:E值究竟是什么?!!!

    先来看E值的计算公式: E=kmne−λSE=kmne^{- \lambda S} E=kmne−λS k,λk, \lambdak,λ 是两个修正参数,与数据库和算法有关,用来平衡不同打分矩阵和搜索 ...

  8. edger多组差异性分析_简单使用DESeq2/EdgeR做差异分析 – 生信笔记

    DESeq2和EdgeR都可用于做基因差异表达分析,主要也是用于RNA-Seq数据,同样也可以处理类似的ChIP-Seq,shRNA以及质谱数据. 这两个都属于R包,其相同点在于都是对count da ...

  9. Bioinfo:学习Python,做生信PartII 学习笔记

    在学习了生信大神孟浩巍的知乎Live "学习Python, 做生信"之后,对第二部分的文件信息处理部分整理了如下的笔记. 一.fasta与fastq格式的转换 1.首先需要了解FA ...

  10. 生信分析学习笔记:(2)GO KEGG分析

    生信分析学习笔记:(2)GO KEGG分析 介绍 教程 1.富集分析 (Over-Representation Analysis ) 2.GSEA(Gene Set Enrichment Analys ...

最新文章

  1. java程序解压/压缩.gz文件
  2. datatables中的bug
  3. mac抹掉磁盘重装系统未能与服务器取得联系_【工具】mac笔记本rm -rf 后 如何恢复删除的文件...
  4. 在word中怎么把文字往下挪挪_ps怎么挪动文字位置
  5. MXone影视自适应模板
  6. AE域名,沙漠之花阿联酋的专属域名-域名百科
  7. python计算器_python_计算器
  8. 数字电路与模拟电路区别
  9. Ubuntu18.04登陆界面美化--Mac主题
  10. meta标签中的http-equiv属性
  11. 数据分析应该怎么做?
  12. Python练手小项目(6)随机取红黑球并计算概率
  13. 计算机网络语音传输杂音回音,电脑使用麦克风有杂音的解决方法-电脑自学网...
  14. 数组的方法-push(),pop(),unshift(),shift()
  15. 临床研究统计分析的要求和报告规范
  16. 单调队列(P3088 Crowded Cows S)
  17. The Best Damn IT Security Management Book Period
  18. 腾讯测试题-满二叉排序树根节点
  19. 《两种文化与科学革命》读后感
  20. drupal安装教程 linux,linux:搭建Drupal

热门文章

  1. 虚拟机共享服务器设置,虚拟机共享网络设置教程
  2. 怎样去掉Using default security password:2A70F900-4445-4113-9749-2E7EE44C1EB1。
  3. 解决nacos不停刷日志 ClientWorker get changedGroupKeys:[] 问题
  4. [转]使用ArcGIS实现WGS84经纬度坐标到北京54高斯投影坐标的转换
  5. 图像尺寸与图像像素、分辨率的关系
  6. 计算机已从异常关机中恢复,win7系统经常遇到“windows已从异常关机中恢复”的解决方法...
  7. 用React实现基于Canvas的涂鸦画板
  8. 【鹏哥C语言网课笔记】:初始C语言
  9. C#,双向链表(Doubly Linked List)归并排序(Merge Sort)算法与源代码
  10. Java基础之成员变量与局部变量