Skip to content

Lift over using a chain map

Nae-Chyun Chen edited this page Oct 15, 2021 · 3 revisions

Build

LevioSAM can be built using make and cmake. Please visit the repo README for instructions. We'll provide a conda and docker version after an official software release.

Usage

Serialize a lift-over map using a chain file:

leviosam serialize -c a_to_b.chain -p a_to_b

Lift over:

leviosam lift -C a_to_b.clft -a aligned_to_a.bam -p lifted_from_a

Optional features for the chain-map mode:

  • -t <int>: Number of threads used (default: 1)
  • -m: Set to additionally update NM:i and MD:z
  • -O <str>: Output file format. Options: sam (default) and bam.
  • -S <str>: Use an indicator to split lifted reads. Options: mapq and none (don't specify -S - will only write to one output file).
  • -M <int>: MAPQ threshold for the -S mapq mode. Reads aligned with a smaller MAPQ will be written to a "deferred" file. (default: 10)

Supported data types

We've tested the program for:

  • Short read alignments (Illumina single-end and paired-end) from Bowtie 2 and bwa-mem
  • Long read alignments (PacBio CLR) from minimap2

Performance

In our benchmark, levioSAM is ~8x faster than CrossMap while levioSAM additionally updates CIGAR strings and mate information (for Illumina paired-end data).

Clone this wiki locally