1 个不稳定版本
0.1.3 | 2023年4月18日 |
---|
#5 在 #long-read
33KB
485 行
bamsalvage, Rust 版本
bamsalvage 的 Rust 版本。
简介
bamsalvage 是一个工具,旨在从可能损坏的 BAM 文件中尽可能多地恢复序列读数。该软件与 Jérémie Roquet 的 bamrescue 具有共同的目的(https://bamrescue.arkanosis.net/)。bamrescue 使用 CRC32 校验和检测损坏的 BGZF 块,跳过损坏的块,如果所有块都从新的读起,则此方法效果良好。
当我们想要恢复长读序列时,一个读可以跨越多个 BGZF 块,因为块的最大大小小于测序仪的输出。
跳过损坏的块并不能解决此类问题,并且常常导致 Samtools 终止和序列恢复失败。
bamsalvage 在检测到任何损坏的块时扫描下一个可用的起始位置。由于该软件的目标是抢救序列,bamsalvage 不会恢复 BAM 文件中包含的所有信息,而是检索读数和质量序列。
安装
程序需要 rustc 和 cargo(版本 >= 1.6)。所有资源都将通过以下命令下载并使用。
git clone https://github.com/takaho/bamsalvage-rust/
cargo build
##用法 cargo run --release -- -i [BAM 文件] -o [输出文件] [--noqual] [--verbose]
或使用目标目录内的二进制文件 bamsalvage -i [BAM 文件] -o [输出文件] [--noqual] [--verbose]
##命令
Options:
-i, --input <FILE> Input BAM file
-o, --output <FILE> Output filename
-l, --limit <integer> Limiting counts [default: 0]
-n, --noqual Skip qual field
-v, --verbose verbosity
-h, --help Print help
-V, --version Print version
依赖项
~8MB
~115K SLoC