Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Epistasis expert rule in TBProfiler v6.0.0+ #407

Open
frogtraveler opened this issue Nov 26, 2024 · 5 comments
Open

Epistasis expert rule in TBProfiler v6.0.0+ #407

frogtraveler opened this issue Nov 26, 2024 · 5 comments

Comments

@frogtraveler
Copy link

Hi Jody,

@sage-wright and I were wondering if you have implemented the epistatic expert rule for Rv0678 and mmpL5 in your newest version of the TB Profiler? I’ve noticed that TBProfiler v6.0.0 release mentions the epistasis rule, but wasn’t sure how exactly it works. We saw that for a Rv0678 mutations that invokes LoF WHO v2 expert rule there is a comment about mmpL5 epistasis rule:
"type": "drug_resistance",
"drug": "bedaquiline",
"original_mutation": "LoF",
"confidence": "Assoc w R",
"source": "WHO catalogue v2",
"comment": "Can only confer resistance if genetically linked to a functional MmpL5"

Would the TBProfiler modify the drug interpretation in such case of Rv0678 R-conferring mutation from R to S, if it detected mmpL5 LoF mutation? Or it only outputs the comment letting users know about the rule?

Thank you!
Varvara

@frogtraveler
Copy link
Author

Forgot to ask: if epistasis expert rule is implemented, how does the pipeline check that the mutations are genetically linked? Does it require 100% allele frequency from both mutations to count as linked?

@jodyphelan
Copy link
Owner

Hi Varvara,

Yes the epistasis rules are implemented and there are two options.
The default behavious simply just makes a note in the result files:

 "notes": [
        "Loss of function variant found in mmpL5 which can abrogate the effect of genetically linked AwR and AwRI mmpR5 (Rv0678) resistance mutations."
    ],

The second option is invoked with --implement_rules and this removes the mmpR5 variant from the resistance mutation list (i.e. sample will be predicted bedaquiline sensitive) in addition to the note being made. Since the mutations may be quite far (like in the pic below) apart it may not be possible to phase the two variants with short reads so no attempt is made to check if they are linked. This may be quite aggresive, which is why the default behaviour is just to highlight the presence of the two variants so that they can be manually checked.

image

@frogtraveler
Copy link
Author

That's great! And thank you a lot for the explanation! You are right, due to short-read data we can't guarantee the linkage. But statistically speaking, if in my sequencing data mmpL5 LoF mutation was present at 100% allele frequency, could you assume that the chance of any proportion of bacterial population exhibiting BDQ/CFZ resistance is very low? We don't even need to pay attention to allele frequency of the resistant Rv0678 mutation in that scenario if all we care about is not reporting false BDQ/CFZ resistance. If mmpL5 LoF is < 100% AF, I can see that we might not want to implement the rule by default, because even if the majority of the population has epistatic interaction going on and is BDQ/CFZ S, a minor portion of the population may have Rv0678 R mutation that is not linked with mmpL5 LOF mutation, and then the strain will still exhibit phenotypic resistance and patient treatment may fail. So my question is, do you think you would consider invoking your BDQ/CFZ epistasis rule automatically if mmpL5 LoF mutation allele frequency is 100%? :)

@jodyphelan
Copy link
Owner

jodyphelan commented Dec 3, 2024

Oh yes I guess if you have an mmpL5 mutation close to 100% and you assume this is reflective of the entire population then it would be statitaclly highly likely that the entire population is going to sensitive.

So there could be a kind of if/else rule perhaps:

if (mmpL5 LoF is present) and (mmpL5 LoF > 99%):
    -> Remove mmpR5 mutation from resistance mutations
    -> Report as Sensitive
else:
    -> Keep mmpR5 mutation in resistance mutations
    -> Report as Resistant
    -> Make note to trigger manual inspection

What do you think of this?

@frogtraveler
Copy link
Author

frogtraveler commented Dec 4, 2024

The logic would work! I only would be concerned to set the mmpL5 LOF to anything below 100%, because, biologically speaking, if I have 0.5% of population that has Rv0678 resistant mutation that is functional, since mmpL5 LoF mutation is not present, it could still be selected for in the presence of antibiotic, and the strain as a whole may end up exhibiting phenotypic resistance and causing treatment failure. I know 100% is also not a guarantee that we are not missing any cells without mmpL5 LoF mutation, but I think we should be as strict as we can be. The comment that will show up in all the cases when mmpL5 is below 100% and prompt user to evaluate possible epistasis is good enough in my mind.

Side question: would any rule that you apply to mmpR5 also be applied to Rv0678? I see we still have both versions of this gene name in the TBDB.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants