#bam-format #noodles #csi #生物信息学 #写入器 #bgzf #输入/输出

noodles-csi

坐标排序索引(CSI)格式读写器

36 个重大版本发布

0.37.0 2024年7月14日
0.35.0 2024年5月16日
0.32.0 2024年3月28日
0.29.0 2023年12月14日
0.2.1 2021年7月30日

解析器实现 中排名 2135

Download history 953/week @ 2024-04-16 795/week @ 2024-04-23 1019/week @ 2024-04-30 690/week @ 2024-05-07 876/week @ 2024-05-14 1131/week @ 2024-05-21 856/week @ 2024-05-28 628/week @ 2024-06-04 1176/week @ 2024-06-11 1046/week @ 2024-06-18 590/week @ 2024-06-25 346/week @ 2024-07-02 1014/week @ 2024-07-09 800/week @ 2024-07-16 686/week @ 2024-07-23 983/week @ 2024-07-30

每月下载量 3,559
用于 60 包(直接使用10个)

MIT 许可证

315KB
7K SLoC

noodles

crates.io Docs.rs CI status

noodles 尝试提供符合规范(当适用时)的库实现,以处理各种生物信息学文件格式。它目前支持 BAM 1.6、BCF 2.2、BED、BGZF、CRAM 3.0/3.1、CSI、FASTA、FASTQ、GFF3、GTF 2.2、htsget 1.3、refget 2.0、SAM 1.6、tabix 和 VCF 4.3/4.4。

用法

noodles 发布在 crates.io 上。早期版本可以在项目中使用,但请注意,API 仍被视为实验性的。

noodles 根据文件格式分成多个包。为了方便,可以将顶层元包 noodles 添加到项目的依赖列表中;格式作为 特性 列出。例如,要处理 BAM 格式,添加 noodles 包并启用 bam 特性。

cargo add noodles --features bam

然后可以通过其重新导出的名称导入已启用的特性,例如

use noodles::bam;

特性标志

单个包可能有可选的特性,可以使用特性标志启用。

  • async:启用使用 Tokio 的异步 I/O。(BAM、BCF、BGZF、CRAM、CSI、FASTA、FASTQ、GFF、SAM、tabix 和 VCF)
  • libdeflate:使用 libdeflate 对 DEFLATE 流进行编码和解码。(BGZF 和 CRAM)

示例

每个包可能都有自己的示例目录,并且所有示例都可以作为应用程序运行。克隆存储库后,运行 cargo run --release --example 以获取可用示例列表。使用示例名称作为选项参数,并将程序参数追加到命令中,例如

cargo run --release --example bam_write > sample.bam
cargo run --release --example bam_read_header sample.bam

lib.rs:

noodles-csi 处理坐标排序索引(CSI)格式的读写。

依赖项

~2.2-4MB
~69K SLoC