kc v0.0.2

Per-read kmer counter for Crystal exercises

kc

build

kc counts k-mers for each read in a FASTQ file.

Build

make        # Default: ARSN format support
make arrow  # Arrow + ARSN format support

Usage

./kc -i input.fastq -f arsn -o output.arsn

Output Formats

  • tsv (default): Dense matrix format
  • sparse: Sparse format (ID, k-mer, count)
  • arrow: Arrow IPC format (requires C++ implementation)
  • arsn: ARSN custom binary format (compact sparse matrix storage)

Implementation Details

  • Default build (make): Supports tsv, sparse, arsn formats
  • Arrow build (make arrow): Supports tsv, sparse, arrow, arsn formats
  • Both arrow and arsn formats require output file (-o option)

Options

Usage: kc [options] -i FILE
    -k, --kmer-size N                k-mer size (default: 3)
    -i, --input FILE                 Input FASTQ file (.gz supported)
    -o, --output FILE                Output TSV file (default: stdout)
    -f, --format FORMAT              Output format: tsv (default), sparse, arrow, arsn
    -t, --threads N                  Number of worker threads (default: 4)
    -c, --chunk-size N               Reads per processing chunk (default: 1000)
    -v, --verbose                    Enable verbose output
    -h, --help                       Show this help message

License

MIT

This project includes code generated by AI.

Repository

kc

Owner
Statistic
  • 0
  • 0
  • 0
  • 0
  • 1
  • 8 days ago
  • June 19, 2025
License

MIT License

Links
Synced at

Thu, 03 Jul 2025 03:39:13 GMT

Languages