UNIKMER(1)
π UNIKMER(1) π
okay bestie, pull up a chair, because this is the toolkit for nucleic acid k-mer analysis and it's genuinely iconic π§¬β¨
β¨ NAME β¨
unikmer β Toolkit for nucleic acid k-mer analysis
πΈ DESCRIPTION πΈ
unikmer β Toolkit for k-mer with taxonomic information π
So basically: unikmer is a toolkit for nucleic acid k-mer analysis, and it gives you functions including set operation on k-mers, optionally with TaxIds, but without count information. no cap.
K-mers are either encoded (when k<=32) or hashed (any k you want, queen), into uint64, and then serialized in a binary file with the extension .unik. that's the whole vibe.
TaxIds can be assigned when counting k-mers from genome sequences, and LCA (Lowest Common Ancestor) is computed during set opertions β yes, including computing union, intersection, set difference, unique and repeated k-mers. the way it just... does all of that. π
Version: v0.19.0
Author: Wei Shen <shenwei356@gmail.com>
Documents: https://bioinf.shenwei.me/unikmer
Source code: https://github.com/shenwei356/unikmer
π¦ Dataset (optional) π¦
Manipulating k-mers with TaxIds needs a taxonomy file from, like, the NCBI Taxonomy database. Please extract "nodes.dmp", "names.dmp", "delnodes.dmp" and "merged.dmp" from the link below into ~/.unikmer/:
ftp://ftp.ncbi.nih.gov/pub/taxonomy/taxdump.tar.gz
...or honestly some other directory if that's more your thing, and later you can refer to it using flag --data-dir or environment variable UNIKMER_DB. iykyk. π
For GTDB, use taxonkit create-taxdump to create NCBI-style taxonomy dump files, or download from:
https://github.com/shenwei356/gtdb-taxonomy
β οΈ Note that TaxIds are represented usinguint32and stored in 4 or less bytes, so all TaxIds should be in the range of[1, 4294967295]. do not test this. fr fr.
π Usage π
unikmer [command]
π Available Commands π
autocompletionβ Generate shell autocompletion script (bash|zsh|fish|powershell)commonβ Find k-mers shared by most of multiple binary filesconcatβ Concatenate multiple binary files without removing duplicatescountβ Generate k-mers (sketch) from FASTA/Q sequencesdecodeβ Decode encoded integer to k-mer textdiffβ Set difference of multiple binary filesdumpβ Convert plain k-mer text to binary formatencodeβ Encode plain k-mer text to integerfilterβ Filter out low-complexity k-mers (experimental)grepβ Search k-mers from binary filesheadβ Extract the first N k-mersinfoβ Information of binary filesinterβ Intersection of multiple binary fileslocateβ Locate k-mers in genomemergeβ Merge k-mers from sorted chunk filesnumβ Quickly inspect number of k-mers in binary filesrfilterβ Filter k-mers by taxonomic ranksampleβ Sample k-mers from binary filessortβ Sort k-mers in binary files to reduce file sizesplitβ Split k-mers into sorted chunk filestsplitβ Split k-mers according to taxidunionβ Union of multiple binary filesuniqsβ Mapping k-mers back to genome and find unique subsequencesversionβ Print version information and check for updateviewβ Read and output binary format to plain text
π Flags π
-c,--compactβ write compact binary file with little loss of speed--compression-levelint β compression level (default-1)--data-dirstring β directory containing NCBI Taxonomy files, includingnodes.dmp,names.dmp,merged.dmpanddelnodes.dmp(default"/home/nilesh/.unikmer")-h,--helpβ help forunikmer-I,--ignore-taxidβ ignore taxonomy information-i,--infile-liststring β file of input files list (one file per line), if given, they are appended to files from cli arguments--max-taxiduint32 β for smaller TaxIds, we can use less space to store TaxIds. default value is1<<32-1, that's enough for NCBI Taxonomy TaxIds (default4294967295)-C,--no-compressβ do not compress binary file (not recommended π)--nocheck-fileβ do not check binary file, when using process substitution or named pipe-j,--threadsint β number of CPUs to use (default4)--verboseβ print verbose information
π bestie, if you wanna know more about any single command, just run:
unikmer [command] --help
that's it, that's the whole thing, and it will tell you more information about a command. slay. β¨
and that's a wrap, my love π this was unikmer version 0.19.0, dated August 2022 β go forth and k-mer, you absolute main character π«Άπ
π¦ where this page comes from
- debian bookworm: unikmer 0.19.1-1+b3 Β· MIT
- debian trixie: unikmer 0.20.0-1+b9 Β· MIT
- ubuntu noble: unikmer 0.19.1-1build1 Β· MIT
- ubuntu noble: unikmer 0.19.1-1ubuntu0.24.04.3 Β· MIT
- ubuntu questing: unikmer 0.20.0-1
- ubuntu resolute: unikmer 0.20.0-2 Β· MIT
- ubuntu stonking: unikmer 0.20.0-2 Β· MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms