Variant call adjudication.
Minimal instructions are below. Please see the minos wiki page for more details.
Get a Docker image of the latest release:
docker pull ghcr.io/iqbal-lab-org/minos:latest
All Docker images are listed in the packages page.
Alternatively, build your own Docker image:
sudo docker build --network=host .
Releases include a Singularity image to download (from version 0.12.1 onwards).
Alternatively, build your own Singularity image:
singularity build minos.simg Singularity.def
Dependencies:
- Python 3 (tested on version 3.6.9)
- gramtools commit 04c4ba717399507b643fd4b77a61c048ef2ed83f
- bcftools
- vt
- vcflib. Specifically,
either
vcflib
, or all three ofvcfbreakmulti
,vcfallelicprimitives
, andvcfuniq
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 .
To run on one sample, you will need:
- A FASTA file of the reference genome.
- One or more VCF files of variant calls.
The only requirement of these files is that they must contain the genotype field
GT
, and correspond to the reference FASTA file. All variants with a non-reference genotype call will be used (both alleles are considered for diploid calls) - Illumina reads in FASTQ file(s).
For example, if you have two call sets in the files calls1.vcf
and calls2.vcf
,
then 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
.
Run tox
to run all unit tests.
They require nextflow
, gramtools
, vt
, vcfbreakmulti
,
vcfallelicprimitives
, vcfuniq
in your $PATH
.
Run an individual test file with tox tests/for_test.py::TestSpam::test_eggs
.
Run the main entry point with python3 -m minos
.