SNP_STORE(1)

πŸ“¦
version 2.5.2 Β· 2 versions
, in ubuntu stonking

✨ snp_store β€” bestie's guide to calling SNPs and indels πŸ’…

okay so listen. snp_store (the manual calls it SnpStore, we're all friends here) is your girl for SNP and Indel Calling in Mapped Read Data. Like, you've got reads mapped to a genome, and now you wanna know where they disagree with the reference?? That's the whole gig. Slay. 🧬


πŸŽ€ SYNOPSIS

snp_store [OPTIONS] <GENOME FILE> <ALIGNMENT FILE> [<ALIGNMENT FILE>
...]

🌸 DESCRIPTION

SNP and Indel Calling in Mapped Read Data. That's it, that's the vibe. You hand it a reference genome, you hand it your sorted alignments, it hands you back a .vcf full of every position where your reads said "not today" to the reference. Iconic behaviour, honestly. πŸ‘‘


πŸ’– REQUIRED ARGUMENTS

  • GENOME INPUT_FILE β€” a reference genome file. The valid filetypes are .fasta and .fa. Yes bestie, you must give it one, this is not optional, this is the main character of the command.
  • ALIGNMENTS β€” a list of INPUT_FILE's, aka your read alignment file(s), and they have to be sorted by genomic position or it's gonna be a mess. Valid filetypes are .sam[.*], .gff, and .bam, and the * there can be any of these extensions: gz, bz2, and bgzf β€” that's transparent (de)compression for you, so you can just hand over the compressed one and she'll deal. 🫢

πŸ”₯ OPTIONS

  • -h, --help β€” shows you the help message. Use it when you're lost.
  • --version β€” shows version info. For the lore.

πŸ‘‘ Main Options:

  • -o, --output OUTPUT_FILE β€” your SNP output file. This one is mandatory bestie, no skipping it. Valid filetype is .vcf.
  • -osc, --only-successful-candidates β€” output only the SNP candidates that got successfully called. Default: output all candidates. Default is the "show everything" vibe.
  • -dc, --dont-clip β€” ignore clip tags in gff. Default: off.
  • -mu, --multi β€” keep non-unique fragmentStore.alignedReadStore. Default: off.
  • -hq, --hide-qualities β€” only show coverage (no qualities) in the SNP output file. Default: off.
  • -sqo, --solexa-qual-offset β€” base qualities are encoded as char value - 64 (instead of char - 33). Little math gremlin moment.
  • -id, --indel-file OUTPUT_FILE β€” output file for called indels in gff format. Default: off. Valid filetype is .gff.
  • -m, --method STRING β€” set the method used for SNP calling, either threshold based or Maq method. One of thresh and maq. Default: maq.
  • -mp, --max-pile INTEGER β€” maximal number of matches allowed to pile up at the same genome position. In range [1..inf]. Default: 1.
  • -mmp, --merged-max-pile β€” do pile up correction on merged lanes. Default: off.
  • -mc, --min-coverage INTEGER β€” minimal required number of reads covering a candidate position. In range [1..inf]. Default: 5.
  • -fc, --force-call INTEGER β€” always call the base if the count is >= fc, ignore other parameters. Default: off. In range [1..inf]. Default: 10. (yes there are two defaults in that sentence, we just vibing 😭)
  • -oa, --orientation-aware β€” distinguish between forward and reverse reads. Default: off.
  • -mpr, --max-polymer-run INTEGER β€” discard indels in homopolymer runs longer than mpr. In range [0..inf]. Default: 100.
  • -dp, --diff-pos INTEGER β€” minimal number of different read positions supporting the mutation. In range [0..inf]. Default: 0.
  • -eb, --exclude-border INTEGER β€” exclude read positions within eb base pairs of read borders for SNV calling. Default: off. In range [0..inf]. Default: 0.
  • -su, --suboptimal β€” keep suboptimal reads. Default: off
  • -re, --realign β€” realign reads around indel candidates. Default: off
  • -pws, --parse-window-size INTEGER β€” genomic window size for parsing reads (this concerns memory consumption, so choose smaller windows for higher coverage, fr fr). In range [1..inf]. Default: 1000000.
  • -mm, --min-mutations INTEGER β€” minimal number of observed mutations for a mutation to be called. In range [1..inf]. Default: 3.
  • -pt, --perc-threshold DOUBLE β€” minimal percentage of mutational base for a mutation to be called. In range [0..inf]. Default: 0.25.
  • -mq, --min-quality DOUBLE β€” minimal average quality of the mutational base for a mutation to be called. In range [0..inf]. Default: 10.
  • -th, --theta DOUBLE β€” dependency coefficient. In range [0..inf]. Default: 0.85.
  • -hr, --hetero-rate DOUBLE β€” heterozygote rate. In range [0..1]. Default: 0.001.
  • -mmq, --min-map-quality INTEGER β€” minimum base call (mapping) quality for a match to be considered. In range [0..inf]. Default: 1.
  • -ch, --corrected-het β€” use amplification bias corrected distribution for heterozygotes. Default: off.
  • -maf, --mean-alleleFreq DOUBLE β€” mean ref allele frequency in heterozygotes. In range [0..inf]. Default: 0.51.
  • -ac, --amp-cycles INTEGER β€” number of amplification cycles. In range [0..inf]. Default: 18.
  • -ae, --amp-efficiency DOUBLE β€” polymerase efficiency, probability of amplification. In range [0..1]. Default: 0.3.
  • -in, --initial-N INTEGER β€” initial allele population size. In range [0..inf]. Default: 10.
  • -mec, --min-explained-column DOUBLE β€” minimum fraction of alignment column reads explained by genotype call. In range [0..1]. Default: 0.8.

πŸ“ Indel calling options:

  • -it, --indel-threshold INTEGER β€” minimal number of indel-supporting reads required for indel calling. In range [1..inf]. Default: 3.
  • -ipt, --indel-perc-threshold DOUBLE β€” minimal ratio of indel-supporting/covering reads for an indel to be called. In range [0..1]. Default: 0.25.
  • -iqt, --indel-quality-thresh INTEGER β€” minimal average quality of inserted base/deletion-neighboring bases for an indel to be called. In range [0..inf]. Default: 1.
  • -bsi, --both-strands-indel β€” both strands need to be observed for an indel to be called. Default: off.
  • -ebi, --exclude-border-indel INTEGER β€” same as option -eb but for indel candidates. In range [0..inf]. Default: 0.

🧚 Other options:

  • -lf, --log-file STRING β€” write log to FILE.
  • -v, --verbose β€” enable verbose output.
  • -vv, --very-verbose β€” enable very verbose output. She's yapping, respectfully.
  • -q, --quiet β€” set verbosity to a minimum. Shhh. 🀫

🌟 EXAMPLES

  1. Low-coverage baby run β€” call SNPs and indels of a low-coverage example (minimum coverage and indel threshold were reduced to 2):
snp_store -mc 2 -it 2 exampleGenome.fa exampleReads.gff -o
exampleSNPs.vcf -id exampleIndels.gff
  1. Realignment run β€” computes a realignment before variant calling. Now, the two 1bp insertions should have been merged into one 2bp insertion. ✨
snp_store -re -mc 2 -it 2 exampleGenome.fa exampleReads.gff -o
exampleSNPs.vcf -id exampleIndels.gff

ngl bestie, just run the help flag first, then work your way up. Start with the default maq method, and only go poking at the threshold options once the defaults stop serving. also those intervals are inclusive and yelling at you in brackets for a reason. πŸ™ˆ

okay that's literally the whole page, no cap. this was snp_store version 1.3.12 [tarball] and the doc was written back in the day as part of the SNP_STORE(1) manual β€” go call some variants, you absolute icon, drink water, and remember: sorted alignments or she will simply not cooperate πŸ’œπŸ«Άβœ¨

πŸ“¦ where this page comes from