- 仅使用chr:pos 转换 rsID时的问题:
- 对应位点rsID不存在,可能是新变异等等原因,通常可以以chr:pos:ref:alt的形式替代。但还有个问题就是Alt allele不存在,比如rs123456 对应chr1:123456的 T>C,A 而你手里的数据是chr1:123456的 T>G, 那问题来了,这应不应该给他们相同的rsID?仅凭位点和类型来说应该给,或许下个版本的dbsnp会加上这个变异,但其实我也没有明确的答案(欢迎评论区讨论),不过实际操作中我会倾向于保守一点,用chr:pos:ref:alt 而不是rsID来表示。
- 如上rsID的介绍所述,rsID并不止只用来表示单一核苷酸的SNP,也会表示其他变异类型,这会导致同一位点有多个rsID表示的变异,最常见的就是某个位点同时有SNP和INDEL,仅凭chr:pos信息而不管allele的话会混淆并大量的错误匹配SNP与INDEL的rsID,后续功能分析会引起很大的不便,举个例子: rs123456 对应chr1:123456的 T>C ,而rs987654 同样对应chr1:123456这个位置,但是这个变异是个INDEL, T>TA, 如果仅凭chr:pos匹配会混淆SNP与INDEL,虽然是同样的位置,但变异造成的影响会完全不同。解释时本应是rs987654这个INDEL造成的影响却错误地解释到rs123456这个SNP上,这种情况应该被避免。这么做破坏了rsID的唯一性特点,是不是有点违背初衷,本末倒置了。
- 还有一个问题就是手头数据里的变异是否已经标准化? 未标准化的变异的chrpos是不准确的,进行左对齐与节俭原则的标准化后可能产生位移,用未标准化chrpos匹配时可能会错位匹配到其他相邻的位点上。比如手头的变异可能是 chr1:123456:AA:AT ,标准化后则是chr1:123455:A:T,向前移了一位,如果你看过1000genome的原始数据就会发现这样的情况大量存在,所以应当注意(参考:GWASLab:变异的标准化 Variant Normalization)
- 0起点还是1起点的参考系问题,处理数据时应该注意,这里不做过多赘述。(根据基因的postion以及正负链的方向)
rsID 向 chr:pos 某参考基因组版本的位置转换时,会遇到的问题:
- 设计上rsID是唯一对应某个变异的,但实际上由于dbSNP版本的不同或其他原因,手头GWAS的sumstats里的rsID可能对应两个位置, 而多个rsID又可能对应同一个位置上相同的变异
- 在对应参考基因组版本上的位置不存在等等
解决办法
rsID转换chrpos时要尽量明确原始数据的dbsnp版本,能确定版本的时候用对应版本,不能的时候要制定统一标准(为了研究的可重复性),转换时要使用统一的dbsnp的版本。
而chrpos转换rsID时,不贪多,不求快,老老实实**用先确认标准化,然后利用注释的方法,也就是相应基因组版本的 位置chr:pos以及 ref与alt全部与rsID全部匹配时才进行转换。
网友评论