Skip to content

c_to_p at intron/exon boundary where splice region is preserved #714

@b0d0nne11

Description

@b0d0nne11

We have a number of ins or dup variants at the intron/exon or exon/intron boundary that return no protein change that we believe should be treated as coding because the splice site & region remain completely intact. This is related to issue #655. There we handled variants that occur at boundary but here we're concerned with variants that span the boundary. We chose to treat these as separate issues because we can't rely only on the offset positions for these variants so our approach needs to be different.

For example:

In [1]: var_c = parse('NM_004119.2:c.1837+21_1837+22insCGAGAGAATATGAATATGATCTCAAATGGGAGTTTCCAAGAGAAAATTTAGAGTTTGGTAAGAATGGAATGTGCCAAA')
In [2]: c_to_p(var_c)
Out[2]: SequenceVariant(ac=NP_004110.2, type=p, posedit=None, gene=None)

We expect this to map to NP_004110.2:p.(Lys614_Val615insAsnGlyMetCysGlnThrArgGluTyrGluTyrAspLeuLysTrpGluPheProArgGluAsnLeuGluPheGlyLys)

To fix, when calculating c_to_p if you end up with no protein change try shifting the var_g (negative_normalizer if strand==1, normalizer if strand==-1) and then sending the shifted mutation through the g_to_c and c_to_p to see if it gets a protein change. If it gets a protein change, report this change as hgvs_p.

For example:

In [3]: var_c = parse('NM_004119.2:c.1837+21_1837+22insCGAGAGAATATGAATATGATCTCAAATGGGAGTTTCCAAGAGAAAATTTAGAGTTTGGTAAGAATGGAATGTGCCAAA')
In [4]: import hgvs
In [5]: normalizer = hgvs.normalizer.Normalizer(hdp, shuffle_direction=3)
In [6]: var_g = normalizer.normalize(c_to_g(var_c))
In [7]: var_c = g_to_c(var_g, var_c.ac)
In [8]: c_to_p(var_c)
Out[8]: SequenceVariant(ac=NP_004110.2, type=p, posedit=(Lys614_Val615insAsnGlyMetCysGlnThrArgGluTyrGluTyrAspLeuLysTrpGluPheProArgGluAsnLeuGluPheGlyLys), gene=None)

Metadata

Metadata

Assignees

No one assigned

    Labels

    keep aliveexempt issue from staleness checks

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions