规范化来自各种注释工具的效果(snpeff、vep)
geneimpacts的Python项目详细描述
给定单个变量的多个snpeff、vep或bcftools结果注释,为每个注释获取一个可排序的python对象。
这是为了提供一个一致的接口 不同的变体注释,如fromsnpEff ANN field和VEP CSQ field。 以及BCFTools consequence field
这将在gemini中使用,但也应该是 一般用途。
设计
有一个effect基类和一个子类,分别用于snpEff
、一个用于VEP
、一个用于BCFT
Effect
对象是可排序的(通过{le}),应该有一个{u eq}方法,以便我们可以使用functools.total_ordering来提供其他比较运算符。
给定两个effects对象,a
和b
:a < b == True
如果b
的severity大于a
我们将有一个类方法:`Effect.top_severity([eff1,…]EFN])如果存在的话,将返回单个最高服务器。 最高级别的领带列表
严重性规则:
给定2个注释,a和ba比b严重,如果:
- b是假基因,a不是
- a是编码的,b不是
- a的严重性高于b(见下文)
- 多酚,然后筛
- 是吗???成绩单长度?(我们无法访问此内容)。
严重性
严重性基于impacts from VEP 以及impacts from snpEff通过将MEDIUM重命名为MED并将MODIFIER重命名为LOW,我们将HIGH、MEDIUM、LOW、MODIFIER从4个类别减少到3