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

Which kmers are used? #7

Closed
ctseto opened this issue Jan 7, 2019 · 4 comments
Closed

Which kmers are used? #7

ctseto opened this issue Jan 7, 2019 · 4 comments

Comments

@ctseto
Copy link

ctseto commented Jan 7, 2019

Can the kmers corresponding to a partition be recovered?

@rchikhi
Copy link
Member

rchikhi commented Jan 22, 2019

Hi Charlie, I believe the question would need to be a bit more detailed..

@ctseto
Copy link
Author

ctseto commented Jan 22, 2019

Mea culpa. I'm interested in analysis of metagenomes for sample discrimination. I run simka on a set of assemblies and am curious about what the kmer partitioning process entailed, and how sample kmers were assigned to the partitions/bins.

I was going to cluster samples based on the kmers partitions though I am unsure if this is meaningful. I am unsure where, and if, simka saves the kmers that go to a given partition.

@clemaitre
Copy link
Collaborator

Hi Charlie,

The kmer partitioning is not used to discriminate the samples but to make the kmer counting step faster. Kmers are distributed to P different files according to a given hash function, and then the kmers of each file can be counted independently and more rapidly. The distribution of kmers (given by the hash function) has no biological or statistical meaning and is just a trick to divide the problem and count the kmers faster. Therefore, I do not think that recovering kmers of each partition will answer your question.

However, Simka is the good tool if you want to cluster or discriminate your samples. It computes distances between all pairs of samples based on the kmer counts, and you can surely cluster samples based on these distances. Simka was actually developped for this objective. In fact, in the scripts/visualization directory, you will find python and R scripts to perform PCA and sample classification based on the distance matrices output by simka. Note that you can also run simka directly on your raw fastq datasets (instead of assemblies).

If you still need to recover kmer sequences, for instance recovering subsets of kmers according to their presence/absence in some datasets, you may have a look at the software DSK : http://github.com/GATB/dsk and its option -solidity-custom.

@ctseto
Copy link
Author

ctseto commented Feb 15, 2019

Dr. Lemaitre,
Thanks for your help! Have some supplemental questions in re DSK, which I'll instead ask at the dsk repo.
~Charlie

@rchikhi rchikhi closed this as completed Apr 11, 2019
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

3 participants