Skip to content
martinghunt edited this page Sep 20, 2021 · 13 revisions

Installation

Dependencies:

  • Python 3 (tested on version 3.6.9)
  • gramtools commit 8af53f6c8c0d72ef95223e89ab82119b717044f2
  • bcftools
  • vt
  • vcflib. Specifically, either vcflib, or all three of vcfbreakmulti, vcfallelicprimitives, and vcfuniq must be installed.
  • Optionally, nextflow and ivcfmerge if you want to use the pipeline to regenotype a large number of samples.

Install by cloning this repository (or downloading the latest release), and running:

pip3 install .

Alternatively, instead of running pip3, build a Singularity container by running:

singularity build minos.simg Singularity.def

Quick start

Run on a single sample

Supposing you have variant calls for one sample, called by two different tools in the files calls1.vcf and calls2.vcf. Run:

minos adjudicate --reads reads1.fq --reads reads2.fq out ref.fasta calls1.vcf calls2.vcf

where reads1.fq and reads2.fq are FASTQ files of the reads and ref.fasta is a FASTA of the reference corresponding to the two input VCF files. The final call set will be out/final.vcf. You can use one or more VCF files as input - Minos will consume all VCF files listed at the end of the command - it does not have to be exactly two files like in the example.

Joint genotype many samples

For each sample, you will need a name, a VCF file of calls and a sorted indexed BAM file of reads. Put this information in a tab-delimited file which must have column names name, vcf, reads, which is called manifest.tsv in the example command below.

With minos installed, use the nextflow file in the minos repository nextflow/regenotype.nf and the nextflow config file nextflow/contig.nf, the command is:

nextflow run \
  -c nextflow/contig.nf \
  -profile medium \
  nextflow/regenotype.nf \
  --ref_fasta <PATH/TO/REFERENCE.FASTA> \
  --manifest manifest.tsv \
  --outdir <PATH/TO/OUTPUT/DIRECTORY>

You will need to replace the value of --ref_fasta with the path to the reference FASTA file, and the value of --outdir with the name of the output directory - this directory is made by the pipeline and should not already exist.

If you want to use singularity instead of having minos installed, then tell nextflow with the option -with-singularity minos_container.simg.

Citation

Minos: variant adjudication and joint genotyping of cohorts of bacterial genomes.

Martin Hunt, Brice Letcher, Kerri M Malone, Giang Nguyen, Michael B Hall, Rachel M Colquhoun, Leandro Lima, Michael Schatz, Srividya Ramakrishnan, The CRyPTIC Consortium, Zamin Iqbal.

doi: https://doi.org/10.1101/2021.09.15.460475

Clone this wiki locally