MASH-SKETCH(1)

NAME
mash-sketch - create sketches (reduced representations for fast operations)

SYNOPSIS

mash sketch [options] fast(a|q)[.gz] ...

DESCRIPTION

Create a sketch file, which is a reduced representation of a sequence or set of sequences (based on min-hashes) that can be used for fast distance estimations. Input can be fasta or fastq files (gzipped or not), and "-" can be given to read from standard input. Input files can also be files of file names (see -l). For output, one sketch file will be generated, but it can have multiple sketches within it, divided by sequences or files (see -i). By default, the output file name will be the first input file with a '.msh' extension, or 'stdin.msh' if standard input is used (see -o).

OPTIONS

-h
    Help

-p <int>
    Parallelism. This many threads will be spawned for processing. [1]

  Input

-l
    List input. Each file contains a list of sequence files, one per line.

  Output

-o <path>
    Output prefix (first input file used if unspecified). The suffix '.msh' will be appended.

  Sketching

-k <int>
    K-mer size. Hashes will be based on strings of this many nucleotides. Canonical nucleotides are used by default (see Alphabet options below). (1-32) [21]

-s <int>
    Sketch size. Each sketch will have at most this many non-redundant min-hashes. [1000]

-i
    Sketch individual sequences, rather than whole files.

-w <num>
    Probability threshold for warning about low k-mer size. (0-1) [0.01]

-r
    Input is a read set. See Reads options below. Incompatible with -i.

  Sketching (reads)

-b <size>
    Use a Bloom filter of this size (raw bytes or with K/M/G/T) to filter out unique k-mers. This is useful if exact filtering with -m uses too much memory. However, some unique k-mers may pass erroneously, and copies cannot be counted beyond 2. Implies -r.

-m <int>
    Minimum copies of each k-mer required to pass noise filter for reads. Implies -r. [1]

-c <num>
    Target coverage. Sketching will conclude if this coverage is reached before the end of the input file (estimated by average k-mer multiplicity). Implies -r.

-g <size>
    Genome size. If specified, will be used for p-value calculation instead of an estimated size from k-mer content. Implies -r.

  Sketching (alphabet)

-n
    Preserve strand (by default, strand is ignored by using canonical DNA k-mers, which are alphabetical minima of forward-reverse pairs). Implied if an alphabet is specified with -a or -z.

-a
    Use amino acid alphabet (A-Z, except BJOUXZ). Implies -n, -k 9.

-z <text>
    Alphabet to base hashes on (case ignored by default; see -Z). K-mers with other characters will be ignored. Implies -n.

-Z
    Preserve case in k-mers and alphabet (case is ignored by default). Sequence letters whose case is not in the current alphabet will be skipped when sketching.

SEE ALSO

mash(1)