Nanomotif is a Python package designed to explore methylation in prokaryotic genomes using Nanopore sequencing. Nanomotif is a fast, scalable, and sensitive tool for identification and utilization of methylation motifs in monocultures and metagenomic samples.
- de novo methylated motif identification
- metagenomic bin contamination detection
- bin association of unbinned contigs (eg. plasmids)
- association of MTases and RM-systems to motifs.
Please see the documentation for detailed installation and usage instructions, descriptions of required files, and analysis examples.
Nanomotif can easily be installed using Conda for managing your Python environments. You can create a new environment and install Nanomotif as follows:
conda create -n nanomotif python=3.9
conda activate nanomotif
conda install -c bioconda nanomotif
Once installed, the installation can be checked by running:
nanomotif check_installation
This runs a test run on a small dataset, ensuring everything works.
For further details, check out the installation guidelines.
To identify methylated motifs, the following files are required:
- Assembly (fasta file)
- modkit methylation pileup
- tab-separated file describing
contig-bin
relationship.
For further details, check out the required files documentation.
Whether you are interested in finding methylated motifs in monoculture samples or metagenomic samples, we recomment just running motif_discovery
nanomotif motif_discovery ASSEMBLY.fasta PILEUP.bed CONTIG_BIN.tsv -t THREADS --out OUT
This will create three files: motifs.tsv
,motif-scored.tsv
, and bin-motifs.tsv
. Highly methylated motifs are found in bin-motifs.tsv
.
See usage and output for detailed usage and output information.
After motif identification it is possible to identify contamination in bins using the bin-motifs.tsv
, contig-bin.tsv
and motif-scored.tsv
files.
nanomotif detect_contamination --motifs_scored MOTIFS_SCORED.tsv --bin_motifs BIN_MOTIFS.tsv --contig_bins CONTIG_BINS.tsv -t THREADS --out OUT
This will generate a bin_contamination.tsv specifying the contigs, which is flagged as contamination.
If the --write_bins and the --assembly_file flags are specified new de-contaminated bins will be written to a bins folder.
See usage and output for detailed usage and output information.
The include_contigs
command assigns unbinned contigs in the assembly file to bins by comparing the methylation pattern of the contig to the bin consensus pattern. The contig must have a unique perfect match to the bin consensus pattern to be assigned to a bin. Additionally, the include_contigs
assigns all the contigs in the bin_contamination.tsv
file as unbinned.
nanomotif include_contigs --motifs_scored MOTIFS_SCORED.tsv --bin_motifs BIN_MOTIFS.tsv --contig_bins CONTIG_BINS.tsv --run_detect_contamination -t THREADS --out OUT
If decontamination should not be performed, the include_contigs
can be run without the --run_detect_contamination
flag or without the --contamination_file
flag.
This module tries to link methylation motifs to their corresponding MTase and, when present, their entire RM system.
The MTase-Linker module has additional dependencies that are not automatically installed with Nanomotif. Therefore, before using this module, you must manually install these dependencies using the MTase-linker install
command.
The MTase-linker
module requires that conda is available on your system.
nanomotif MTase-linker install
This will create a folder named ML_dependencies
in your current working directory, containing the required dependencies for the MTase-linker module. You can use the --dependency_dir
flag to change the installation location of the ML_dependencies
folder.
The installation requires conda to generate a few environments.
When the additional dependencies are installed you can run the workflow using MTase-linker run
nanomotif MTase-linker run -t 10 --assembly ASSEMBLY.fasta --contig_bin contig_bin.tsv --bin_motifs nanomotif/bin_motifs.tsv -d ML_dependencies -o mtase_linker
Running the nanomotif MTase-linker run command will generate two primary output files: mtase_assignment_table.tsv and nanomotif_assignment_table.tsv. The first file lists all predicted MTase genes in the genome along with their predicted methylation characteristics and whether the module was able to unambiguously assign any detected motifs to the MTase (linked
= (True/False)).
The second file includes data from the bin-motifs.tsv of the nanomotif output with two additional columns linked
and candidate_genes
. The linked
variable is a boolean indicator if the motif could be unambiguously linked to a MTase in the bin/genome (TRUE/FALSE). If True the gene_id of the MTase is provided in candidate_gene
. If False, the candidate_gene
variable lists feasible candidate facilitators of the modification based on motif type and modification type predictions.
Please cite our preprint if you use Nanomotif for your research:
Nanomotif: Identification and Exploitation of DNA Methylation Motifs in Metagenomes using Oxford Nanopore Sequencing Søren Heidelbach, Sebastian Mølvang Dall, Jeppe Støtt Bøjer, Jacob Nissen, Lucas Nicolaas Ludovic van der Maas, Mantas Sereika, Rasmus Kirkegaard, Sabrina Just Kousgaard, Ole Thorlacius-Ussing, Sheila I Jensen, Katja Hose, Thomas Dyhre Nielsen, Mads Albertsen. Preprint at bioRxiv https://doi.org/10.1101/2024.04.29.591623 (2024)
Nanomotif is released under the MIT License. Feel free to use, modify, and distribute the package in accordance with the terms of the license.
Nanomotif builds upon various open-source libraries and tools that are instrumental in its functionality. We would like to express our gratitude to the developers and contributors of these projects for their valuable work.