NanoSNP icon indicating copy to clipboard operation
NanoSNP copied to clipboard

A deep learning-based SNP calling method to identify SNPs based on low-coverage Nanopore sequencing reads.

NanoSNP: A progressive and haplotype-aware SNP caller on low coverage Nanopore sequencing data

Installation

NanoSNP can be installed using Docker or Singularity:

  • docker installation with gpu device:
docker pull huangnengcsu/nanosnp:v2.1-gpu
  • singularity installation with gpu devices:
singularity pull docker://huangnengcsu/nanosnp:v2.1-gpu

Usage

For whole genome SNP calling on each chromosome including chr1-chr22,chrX,chrY,chrM, use run_caller.sh to call SNPs.

Singularity:

INPUT_DIR="path to input directory, which store the input bam and reference genome."    ## Absolute path
OUTPUT_DIR="path to output directory."  ## Absolute path, make sure the output directory is existing.
THREADS="40"  ## number of threads used for computing.
COVERAGE="30"  ## coverage of sequencing reads

singularity exec --nv --containall -B "${INPUT_DIR}":"${INPUT_DIR}","${OUTPUT_DIR}":"${OUTPUT_DIR}" \
nanosnp_v2.1-gpu.sif run_caller.sh \
-b "${INPUT_DIR}/input.bam" \
-f "${INPUT_DIR}/reference.fa" \
-t "${THREADS}" \
-c "${COVERAGE}" \
-o "${OUTPUT_DIR}"

Docker:

INPUT_DIR="path to input directory, which store the input bam and reference genome."    ## Absolute path
OUTPUT_DIR="path to output directory."  ## Absolute path, make sure the output directory is existing.
THREADS="40"  ## number of threads used for computing.
COVERAGE="30"  ## coverage of sequencing reads

docker run \
-v "${INPUT_DIR}":"${INPUT_DIR}" \
-v "${OUTPUT_DIR}":"${OUTPUT_DIR}" \
--gpus all \
huangnengcsu/nanosnp:v2.1-gpu \
run_caller.sh \
-b "${INPUT_DIR}/input.bam" \
-f "${INPUT_DIR}/reference.fa" \
-t "${THREADS}" \
-c "${COVERAGE}" \
-o "${OUTPUT_DIR}"