nanoporetech / modkit

A bioinformatics tool for working with modified bases
https://nanoporetech.com/
Other
140 stars 8 forks source link

Workflow suggestions for follow-up metagenome analysis? #48

Closed Ge0rges closed 1 year ago

Ge0rges commented 1 year ago

Hello modkit team,

Using your tool, I have been able to create bedMethyl files for my reads mapped onto a metagenomic assembly, and get high level methylation information using modkit summary.

As I am new to epigenomic analysis I wanted to solicit your advice regarding next steps.

I would like to accomplish the following:

Do you have any recommendations for existing tools or workflows that would allow me to accomplish this? I have MAGs already assembled. Thank you.

ArtRand commented 1 year ago

Hello @Ge0rges ,

Sorry for the slow reply, I was OOO. I am not a metagenomics expert, but I can ask some of my colleagues who are.

Retrieve the methylated version of my MAGs

What do you mean exactly? I imagine that if you have assemblies, you can align the reads with base modification calls, but I imagine you're trying to do something more complex.

Compute possible methylated variants of each MAG

If you have your reads partitioned by MAG, you can use the --partition-tag option in pileup to generate a bedMethyl for each MAG, then you can do comparisons. In the next release, we're going to introduce a differential methylation analysis command that will let you rank and compare base modification differences at specified regions across multiple samples.

Ideally, visualize these results

If you mean something like IGV, I believe it supports base modifications in BAMs. You can use modkit to produce a bedgraph, which, in my option, is a little better for visualization. Good tools for base modification visualization is something we're collaborating on with the tool developers. If you want to give some input, I'm sure it would be appreciated. For example, this issue.

Ge0rges commented 1 year ago

Hi @ArtRand

Not slow at all! I appreciate the reply.

What do you mean exactly? I imagine that if you have assemblies, you can align the reads with base modification calls, but I imagine you're trying to do something more complex.

I was essentially thinking the same thing. I asked however in case there was a nanopore/recommended tool to do this with that produces a harmonized output of this mapping result easily with the base modification. My current plan is to use one of the great aligners out there and then write a script to calculate the %-methylated prob for any one nucleotide, then figure out a good way to visualize.

If you have your reads partitioned by MAG, you can use the --partition-tag option in pileup to generate a bedMethyl for each MAG, then you can do comparisons. In the next release, we're going to introduce a differential methylation analysis command that will let you rank and compare base modification differences at specified regions across multiple samples.

That sounds great! I'll keep an eye out for that release. That's exactly the type of analysis I was looking for.

If you mean something like IGV, I believe it supports base modifications in BAMs. You can use modkit to produce a bedgraph, which, in my option, is a little better for visualization. Good tools for base modification visualization is something we're collaborating on with the tool developers. If you want to give some input, I'm sure it would be appreciated. For example, https://github.com/GMOD/jbrowse-components/issues/3842.

No input to offer yet, but as I go deeper into this analysis I will keep this in mind. Thanks for the pointers!

ArtRand commented 1 year ago

@Ge0rges happy to help.

My current plan is to use one of the great aligners out there and then write a script to calculate the %-methylated prob for any one nucleotide, then figure out a good way to visualize.

You may want to try the dorado aligner (link) for mapping (can be done during basecalling too). %-methylated per nucleotide is exactly what modkit pileup does.

Good luck! Don't hesitate to ask any more questions.

Ge0rges commented 1 year ago

Can I use mod kit to go from a bedMethyl file to a bedGraph? I have some bedmethyl files generated without the bed graph option and would like to save the computational time of repeating the pileup command.