-
Notifications
You must be signed in to change notification settings - Fork 78
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
summary: further improvements to protein handling in sourmash #1525
Comments
here are some notes I took while working through #1159 - copied over from #999 (comment) Changes to signature computationSuggested changes to signature computation:
Signature JSON format changesWhat signature format changes should we do in tandem? see #268 for rollup issue
Changes to MinHash APIgeneral issue here, #338
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
This is an update of and replacement for #999, which raised a lot of issues around how we were doing protein k-mer calculations.
This issue is being updated after the release of sourmash 4.1.
Over the past year, several of the issues in #999 were resolved by the release of sourmash v4, which introduced
sourmash sketch
(via #1159)Taking from @bluegenes excellent summary, here are the remaining unresolved issues from #999.
k=33
should be comparable with proteink=11
(equivalent ksizes). Differentiating by hash functions per can we just use the hash function to flag incompatible signatures, instead of DNA/protein/etc? #751 could facilitate this. In Change--protein
k-size meaning #574, @luizirber pointed out that can we just use the hash function to flag incompatible signatures, instead of DNA/protein/etc? #751 is already enabled in the rust code?- translate whole sequence, then emit kmers (with --protein, translate whole sequence and then emit k-mers #664)
- pad translated seqs (Pad non-multiples-of-three nucleotide sequences for protein translation and deal with codon degeneracy elegantly #659)
- potentially add 3-frame translation (Add option for strand-specific / 3-frame translation for --protein #657)
add_sequence
andadd_protein
? From Document and/or improve protein MinHash API. #720: "in the provided example in Setting "scaled=1" doesn't retrieve all protein k-mers #701, I'm not sure why add_sequence doesn't complain when it's given a bunch of non-ACTG characters."I do think differentiating sketches by hash functions #751 is its whole own thing and not specifically protein-esque.
Notes and thoughts:
It would be nice to figure out if #1037, which checks the first 100bp of FASTA files, is a good approach. Thoughts from #999 (comment) that seem relevant -
add_dna_sequence
andadd_protein_sequence
at the API level;#1277 changed the Python layer so that ksize for protein was "correct" (the actual length of the word, not k*3!). This still needs to be changed at the Rust layer, though, which would involve changing the JSON signature formats and version.
Also see "Next steps for sourmash sketch" #1169.
The text was updated successfully, but these errors were encountered: