Cut sequences at positions with few spanning molecules.
Written by Shaun Jackman, Lauren Coombe, and Justin Chu.
Shaun D. Jackman, Lauren Coombe, Justin Chu, Rene L. Warren, Benjamin P. Vandervalk, Sarah Yeo, Zhuyi Xue, Hamid Mohamadi, Joerg Bohlmann, Steven J.M. Jones and Inanc Birol (2018). Tigmint: correcting assembly errors using linked reads from large molecules. BMC Bioinformatics, 19(1). doi:10.1186/s12859-018-2425-6
Tigmint identifies and corrects misassemblies using linked reads from 10x Genomics Chromium. The reads are first aligned to the assembly, and the extents of the large DNA molecules are inferred from the alignments of the reads. The physical coverage of the large molecules is more consistent and less prone to coverage dropouts than that of the short read sequencing data. The sequences are cut at positions that have insufficient spanning molecules. Tigmint outputs a BED file of these cut points, and a FASTA file of the cut sequences.
Each window of a specified fixed size is checked for a minimum number of spanning molecules. Sequences are cut at those positions where a window with sufficient coverage is followed by some number of windows with insufficient coverage is then followed again by a window with sufficient coverage.
Install Linuxbrew on Linux or Windows Subsystem for Linux (WSL), or install Homebrew on macOS, and then run the command
brew install tigmint
conda install -c bioconda tigmint
pip3 install tigmint
docker run -it bcgsc/tigmint
Download and extract the source code. Compiling is not needed.
git clone https://github.com/bcgsc/tigmint && cd tigmint
or
curl -L https://github.com/bcgsc/tigmint/archive/master.tar.gz | tar xz && mv tigmint-master tigmint && cd tigmint
pip3 install intervaltree pybedtools pysam statistics
Tigmint uses Bedtools, BWA and Samtools. These dependencies may be installed using Homebrew on macOS or Linuxbrew on Linux.
brew install bedtools bwa samtools
brew tap brewsci/bio
brew install arcs links-scaffolder
brew install abyss seqtk
To run Tigmint on the draft assembly draft.fa with the reads reads.fq.gz, which have been run through longranger basic:
samtools faidx draft.fa
bwa index draft.fa
bwa mem -t8 -p -C draft.fa reads.fq.gz | samtools sort -@8 -tBX -o draft.reads.sortbx.bam
tigmint-molecule draft.reads.sortbx.bam | sort -k1,1 -k2,2n -k3,3n >draft.reads.molecule.bed
tigmint-cut -p8 -o draft.tigmint.fa draft.fa draft.reads.molecule.bed
bwa mem -C is used to copy the BX tag from the FASTQ header to the SAM tags.samtools sort -tBX is used to sort first by barcode and then position.Alternatively, you can run the Tigmint pipeline using the Makefile driver script tigmint-make. To run Tigmint on the draft assembly myassembly.fa with the reads myreads.fq.gz, which have been run through longranger basic:
tigmint-make tigmint draft=myassembly reads=myreads
To run both Tigmint and scaffold the corrected assembly with ARCS:
tigmint-make arcs draft=myassembly reads=myreads
To run Tigmint, ARCS, and calculate assembly metrics using the reference genome GRCh38.fa:
tigmint-make metrics draft=myassembly reads=myreads ref=GRCh38 G=3088269832
tigmint-make is a Makefile script, and so any make options may also be used with tigmint-make, such as -n (--dry-run)..fa and the reads .fq.gz, and the extension is not included in the parameters draft and reads. These specific file name requirements result from implementing the pipeline in GNU Make.tigmint: Run Tigmint, and produce a file named $draft.tigmint.faarcs: Run Tigmint and ARCS, and produce a file name $draft.tigmint.arcs.fametrics: Run, Tigmint, ARCS, and calculate assembly metrics using abyss-fac and abyss-samtobreak, and produce TSV files.draft: Name of the draft assembly, draft.fareads: Name of the reads, reads.fq.gzspan=20: Number of spanning molecules thresholdwindow=1000: Window size (bp) for checking spanning moleculesminsize=2000: Minimum molecule sizeas=0.65: Minimum AS/read length rationm=5: Maximum number of mismatchesdist=50000: Maximum distance (bp) between reads to be considered the same moleculemapq=0: Mapping quality thresholdtrim=0: Number of bases to trim off contigs following cutst=8: Number of threadsc=5e=30000r=0.05a=0.1l=10ref: Reference genome, ref.fa, for calculating assembly contiguity metricsG: Size of the reference genome, for calculating NG50 and NGA50-C option to include the barcode in the BX tag of the alignments.samtools sort -tBX.samtools merge -tBX.After first looking for existing issue at https://github.com/bcgsc/tigmint/issues, please report a new issue at https://github.com/bcgsc/tigmint/issues/new. Please report the names of your input files, the exact command line that you are using, and the entire output of Tigmint.
Content type
Image
Digest
Size
419.4 MB
Last updated
almost 8 years ago
docker pull bcgsc/tigmint