add clinical antibody deep mutational scanning escape data #109
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
display deep mutational scanning escape data from clinically relevant anti-F antibodies
@rneher, we are currently making this as a draft pull request to see if you would be interested in integrated this into your Nextstrain RSV builds. If so, that would be awesome. If not (eg, if this is too many changes), we can also make our own separate builds with this, but wanted to know which approach you prefer.
As background, @CSimonich @tmcmaho in our group have done pseudovirus deep mutational scanning to measure how mutations to RSV F affect neutralization by the two anti-RSV antibodies that have been clinically approved (Nirsevimab and Clesrovimab), measuring against both the antibody IgG and Fab (both measurements are informative for reasons we will explain the paper associated with this). The data are not yet final QC-ed, but we have draft data that is close to what we will have with final QC.
We think it would be useful to be able to display these data on the RSV trees to look when sequences have mutations that likely affect escape.
In this pull request, we do several things:
1. Enable trees to be colored by total escape and max escape mutation for each antibody
This coloring is now enabled for the
genome,FandF-antibody-escapebuilds using a viridis color scale.This change involved some relatively modest additions to the configuration and snakemake rules, as well as a new script that does the scoring from the DMS data.
2. Add a new
F-antibody-escapebuild that subsamples to ensure high escape sequences are includedThe existing
Fbuild (for which sequence sampling in unchanged) samples by year-geography.I also added a new
F-antibody-escapebuild that samples in such a way as to ensure that sequences with high escape to the antibodies get included too.This build is designed to make sure the trees show high-escape sequences.
The largest fraction of changes to the
snakemakerules are related to this aspect (adding this new build, which requires scoring all sequences pre-tree-build and then using that in an additional custom subsampling rule.)3. Partially successful effort to change background minimum date
To me the 3y and 6y builds are actually sort of hard to look at as the background sequences on those builds go all the way back to 1975.
I'm not sure if you had a good reason for doing things that way, but I tried reducing
background_min_datein the confg for those so less of the depth of the tree was used on very old sequences and more was used on recent sequences.This only sort of worked---better for some builds than others.
This change could be reverted, or further improved.
I do think that the depth of background sequence dates here does obscure the goal of the 3y and 6y builds to show more recent sequences.
How the new trees look
Here is how those new trees look on data from a few weeks ago (I haven't re-run on today's data)
Those are two of the builds, the rest are at similar URLs for the different subtypes / builds / date ranges on the jbloomlab Nextstrain group.
Next steps
Can you comment on whether this is something that you might want to merge into this main
nextstrainbuild. If YES we can start working on any changes you would require. If NO we can try to set up a build with this on our own.Checklist
At this point no additions have been made to the tests, and I'm not sure if they still pass.
The CHANGELOG has also not been updated.