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

Intuitions regarding possible output and previous steps #12

Open
adriaaula opened this issue Jun 4, 2019 · 1 comment
Open

Intuitions regarding possible output and previous steps #12

adriaaula opened this issue Jun 4, 2019 · 1 comment

Comments

@adriaaula
Copy link

First of all, thanks for the tools you developed, the extensive tutorials and the fast response. You people rock.

This is not a bug example but rather some doubts regarding the tool.

In our institute we processed 35 metagenomic samples from coastal marine water. I processed the dataset with a typical pipeline (Megahit assembly of the samples + gene prediction with both prodigal and metagenemarks, clustering 95% identity, 90% cov, -cov-mode 2) to create a gene catalog.

Separately I performed similar processes using Plass, performing a coassembly of 8/9 samples each and then clustered the dataset with linclust (95% identity, 90% cov, -cov-mode 2). Comparing the results, I obtained 30M in the first case and 529M in the second.

  • But does this improvement in the number makes sense? In your paper you talk about 2 to 10 fold improvement, but this is 20X at least. Maybe I have some errors in my processing. I was about to try for example the --cov-mode to 0 since I mistakenly specified 2 instead of 0, which can be one of the reasons of the high number.

  • In the paper I was unable to find quality filtering steps. I guess it is because the raw data was trimmed in the respective papers and then archived in SRA. But could you explain possible stringent approaches to the data cleaning before Plass to reassure the results obtained? I observed that in the biorxiv paper from C. Titus Brown they specified the following:

To avoid confounding effects of random
sequencing error in the analysis and increase specificity at the
cost of sensitivity, we focused only on high-abundance data:
we truncated all reads in the query neighborhoods at any
k-mer that appears fewer than five times, and ran Plass on
these abundance-trimmed reads from each neighborhood

Which tradeoff could be less stringent but useful?

Thanks for everything!

@martin-steinegger
Copy link
Member

martin-steinegger commented Jun 4, 2019

@adriaaula thank you for trying out Plass and your comments. :)

I agree at 20X increase seems to be too high. We used --cov-mode 1 to cluster the proteins in the Plass paper and we only consider assembled proteins(fragments) with length > 100. This mode should merge small fragments. The mode you picked --cov-mode 2 clusters only sequences that can cover the center sequence by 90%. Therefor you end up with many protein fragments. See https://github.com/soedinglab/MMseqs2/wiki#how-to-set-the-right-alignment-coverage-to-cluster

We did not perform quality trimming for the publication but we downloaded quality filtered data from the JGI site. The filtering was preformed by RQCFilter https://jgi.doe.gov/data-and-tools/bbtools/bb-tools-user-guide/data-preprocessing/

In general quality filtering of metagenomic data is tricky. I have tested Plass in combination with bloocoo (https://github.com/GATB/bloocoo) to correct errors and I could see an slight increase in precision and sensitivity of the assembly. So I can recommend using it. Trimming could improve the recovery of some low abundant proteins if the error affect the most left or right amino acid. For highly abundant species (o proteins) trimming will not have too much of an effect, since Plass will pick the best extension by considering sequence identity and thus bogus fragments will be discarded by the lack of homology.

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