前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ANNOVAR 是如何注释 RS ID 的?

ANNOVAR 是如何注释 RS ID 的?

作者头像
生信菜鸟团
发布2020-03-30 14:21:25
3.1K0
发布2020-03-30 14:21:25
举报
文章被收录于专栏:生信菜鸟团生信菜鸟团

翻译自 ANNOVAR 文档:https://doc-openbio.readthedocs.io/projects/annovar/en/latest/articles/dbSNP/

使用 ANNOVAR 进行的一项常见任务就是将 dbSNP 标识符分配给 VCF 文件中的突变。我经常会遇到这样的问题,即 ANNOVAR 没有为特定突变分配 dbSNP rs标识符,但该突变确实是“已知的” SNP。这种情况一般发生在 indel 中,但有时也发生在 SNV 中。

在深入探讨此问题之前,让我们先回过头来问一个简单的问题:dbSNP rs 标识符到底是什么?

dbSNP 网站上的“官方定义”这样说到:

NCBI 将对数据库定期构建参考 SNP cluster rs ID。参考 SNP cluster 定义了一组非冗余标记,用于标记参考基因组序列以及与其他 NCBI 资源整合。基因组序列中的新位置的新记录将被实例化为新的 refSNP cluster 。与现有数据匹配的记录则会将被合并到现有的 refSNP cluster 中。一个参考 SNP cluster 记录的格式为 NCBI | rs [NCBI SNP ID],其中 rs 为小写。

在同一网站上给出了另一种解释:

参考 SNP ID 号或 rs ID 是 NCBI 分配给映射到相同位置的一组 SNP(或 cluster )的标识符。记录提交后,分配 rs ID 号或 rs 标签。当 dbSNP 于 1998 年首次向公众发布时,数据库中唯一的提交都被分配了单独的 rs ID 号。现在 dbSNP 的提交已不断完善,就对新提交的 SNP 进行评估,以查看它是否映射到与先前提交的 SNP 相同的位置;如果是,则将提交的 SNP 链接到现有参考 SNP 记录的参考集中。这些 SNP rs ID 映射到外部资源或数据库,包括 NCBI 数据库。SNP rs ID号记录在这些外部资源和数据库的记录中,以使用户回到原始的dbSNP记录。参考SNP记录的格式为 NCBI | rs。请注意,“ rs”为小写。有关 refSNP 的更多信息,请参见我们的在线文档。(04/05/06)

基本上,我的理解是,如果一个用户提交了一条新序列,NCBI 会尝试将其与现有记录进行匹配(所谓 refSNP cluster ),如果不存在匹配,它将尝试为该记录分配新的 rs 标识符。但真正的问题是,即使在阅读了这段话后,包括我自己在内的大多数人仍无法确切地理解 dbSNP rs 标识符究竟是什么,因为这些词本身并不构成“定义”。我(和许多其他人)可能遇到的一个简单问题是:rs identifer 是序列的延伸还是从许多其他序列构建的“共识”序列的延伸,或者是基因组位置,亦或是基因组位置的集合,也或者是包含 chr:start-end/ref/alt 信息的突变,还是共享相同位置/基因座的多个突变?

我可能会认为 rs ID 是“共识”序列的一部分。在我的拙见中,将其作为 rs ID 的定义实际上是最有意义的(因为它与基因组无关)。但事实并非如此,根据我对 dbSNP 网站的理解,dbSNP 可能希望使用 rs ID 来表示 SNP/突变。(但在与 dbSNP 开发人员的单独讨论中,我获悉 rs ID 绝对不表示 SNP/突变,而是表示给定参考基因组中的特定位置,这与他们在网站上的 FAQ 相矛盾)。因此,我真的不知道 dbSNP 是如何确切地定义 rs ID。我也向 dbSNP 发送了电子邮件,以获得更多的说明,但从未得到答复。我认为 dbSNP 的开发人员本身对 rsID 也存在一些困惑:大家一般都将 rs id 视为 mutation specifier 而非开发人员所定义的 locus specifier。

话说回来,实际上,几乎所有研究人员都用 rs ID 来表示突变/变异,而不是基因座或 DNA 序列。比如,我们会说 rs123456 与血压升高有关;rs123456 会产生一个新的终止密码子,导致蛋白质被截断; rs123456 的 MAF 为 5%,等等。一个简单的解释是,传统上 SNP 是双等位基因 ,因此使用 rs ID 可以自动表示基因组中唯一的非参考突变。但 dbSNP 可能并不喜欢上面的说法,他们希望每个人说 1p23.4 上的 rs123456 G 等位基因产生了一个新的终止密码子,或者 3q11.2上的 rs123456 T 等位基因具有 5% 的 MAF,以此类推。但这种交流方式对于研究人员来说很不方便。最终,它会被归结为一个可识别性问题:对于当前的 dbSNP 版本,rs123456rs123456-G 都无法表示参考基因组中的唯一突变,而且在某些参考基因组中存在许多 rs ID 可以映射到多个位置,这种情况可能变得更糟。根据 dbSNP 释放数据的方式,我们作为用户必须做出一些选择:rs ID 是指标识一个基因座,还是标识一个基因座中的多个预定义等位基因,亦或是标识一组具有相似序列上下文的基因座, 又也许是标识一组具有相似序列上下文的基因座中的多个预定义等位基因(但并非所有等位基因都需要存在于所有基因座上)。

Anyway,我们现在已有足够的背景知识了。让我们转到为新突变分配 dbSNP rs ID(例如rs1045642 )的主题。以下是 dbSNP VCF 文件中的一条记录:

代码语言:javascript
复制
7 87509329 rs1045642 A G,T . . RS=1045642;RSPOS=87509329;RV;dbSNPBuildID=86;SSR=0;SAO=0;VP=0x05037800030511051f010101;WGT=1;VC=SNV;PM;TPA;PMC;S3D;SLO;REF;SYN;ASP;G5;HD;GNO;KGPhase1;KGPilot123;KGPROD;OTHERKG;PH3;OM

我们假设 rs1045642 表示在 chr7:87509329A->GA->T 突变(尽管 dbSNP 可能不认为是这样)。

那么问题来了:

1.如果你在数据中找到了 chr7:87509329A->C 突变2.如果你在数据中找到了 chr7:87509329delA 突变

面对这两种情况,我们可以说你的数据中存在 rs1045642 吗?

在某些注释软件中,可能将第一种情况注释为 rs1045642,或者是两种情况都注释为 rs1045642

但在 ANNOVAR 中,这两种情况都不会被注释 rs id。在基于 filter-based 的注释方法中,ANNOVAR 将仅识别与数据库完全匹配的条目输出,不仅包括位置,还包括核苷酸同一性。在 filter-based 的注释中保持“完全匹配”功能非常重要,否则等位基因频率,功能评分等都将失去其可识别性。

另一个真实案例,rs34083643[1] 被 ANNOVAR 注释为常见突变。但在 ExAC 数据库[2]中这是一种罕见的突变,其等位基因频率仅为2.994e-5。同样,这可以通过以下事实来简单解释:许多数据库或工具并不关心 dbSNP 标识符的可识别性,只要位置重叠,它们就会分配 rsid。而 ANNOVAR 更加严格,并且仅将突变与原始 dbSNP 完全重合时才会输出。

对于 indel,事情要更复杂一些。但是,如果您已经执行左归一化,那么我们已提供了一个完全归一化的“新” dbSNP(我们称之为 avsnp),以便与你的数据进行匹配(有关详细信息,请参见下一篇文章)。avsnp 将确保用户数据的 indel 与 dbSNP rs ID 更好地匹配。目前,avsnp138 适用于 hg19,avsnp142 适用于 hg19 和 hg38 。用法示例如下:

代码语言:javascript
复制
annotate_variation.pl -downdb -buildver hg19 avsnp142 humandb/
annotate_variation.pl ex1.avinput humandb/ -filter -build hg19 -dbtype avsnp142

对于 ANNOVAR 用户,无论 dbSNP 最初计划如何使用 rs ID,这些都是最“正确”的 dbSNP 版本,以确保 rs ID 的可识别性。

其他讨论

1.dbSNP 中的 bug:一些已知的 SNP 消失了!

许多软件工具和数据库(包括 dbSNP )都可能存在一些 bug 。例如,dbSNP144 中就存在一些问题:在 chr17 的 39.4Mb 至 39.6Mb 区域中竟然只有几个 SNP!但在 dbSNP142 或 dbSNP146 以及早期 dbSNP 版本中,不存在这个 bug。(我们可以用 UCSC 基因组浏览器进行可视化)。因此,有时我们需要用多个 dbSNP 版本进行注释,以确保结果正确。

1.注意 dbSNP 坐标系转换!

通常,我非常反对这种做法。但出于各种原因,许多研究人员都会这样做。我只想指出,在完成对 VCF 文件的转换后,你不应期望 dbSNP 批注会是相同的。绝大多数人都会忽略的一点是,等位基因本身也可能会因为不同参考基因组而改变。例如,hg19 中的 ACGTACGTACGT 序列很可能成为 hg38 中的 ACGTACCTACGT(存在 G>C 的改变)。因此,hg19 中的突变可能成为 hg38 中的参考等位基因(这是我的一般经验),这个突变就丢失了。但如果只是进行简单的转换,这个突变将继续存在,这当然是有问题的。

引用链接

[1] https://www.ncbi.nlm.nih.gov/projects/SNP/snp_ref.cgi?rs=34083643 [2] https://gnomad.broadinstitute.org/


生信技能树目前已经公开了三个生信知识库,记得来关注哦~

每周文献分享

https://www.yuque.com/biotrainee/weeklypaper

肿瘤外显子分析指南

https://www.yuque.com/biotrainee/wes

生物统计从理论到实践

https://www.yuque.com/biotrainee/biostat

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-03-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信菜鸟团 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 其他讨论
    • 引用链接
    相关产品与服务
    数据库
    云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档