3个版本

0.3.4-beta.92023年10月27日

#2987 in 解析器实现

Apache-2.0

7KB

Exon

Exon是一个用于生命科学应用的分析工具包。它具有以下特点:

  • 支持生物信息学、蛋白质组学和其他领域的多种文件格式
  • 支持本地文件系统和对象存储
  • 支持多语言访问的Arrow FFI原语
  • 基于SQL的生物信息数据访问 — 支持通用DML和一些DDL

请注意,Exon最近从一个大库中分离出来,因此请耐心等待我们清理工作完成。如果您在此期间有任何评论或问题,请提交问题。

安装

Exon可通过crates.io获取。要安装,运行

cargo add exon

用法

Exon设计为作为库使用。例如,要读取FASTA文件

use exon::context::ExonSessionExt;

use datafusion::prelude::*;
use datafusion::error::Result;

let ctx = SessionContext::new_exon();

let df = ctx.read_fasta("test-data/datasources/fasta/test.fasta", None).await?;

有关更多信息,请参阅rust文档

文件格式

格式 压缩(s) 推断扩展(s)
BAM - .bam
BCF - .bcf
BED gz, zstd .bed
FASTA gz, zstd .fasta, .fa, .fna
FASTQ gz, zstd .fastq, .fq
GENBANK gz, zstd .gbk, .genbank, .gb
GFF gz, zstd .gff
GTF gz, zstd .gtf
HMMDOMTAB gz, zstd .hmmdomtab
MZML gz, zstd .mzml[^2]
SAM - .sam
VCF gz[^1] .vcf

[^1]: 使用bgzip而不是gzip。[^2]: mzML也有效。

设置

Exon使用以下设置

设置 默认 描述
exon.vcf_parse_info true 解析VCF INFO字段。如果为False,INFO字段将作为单个字符串返回。
exon.vcf_parse_formats true 解析VCF FORMAT字段。如果为False,FORMAT字段将作为单个字符串返回。

您可以通过运行以下命令更新设置:

SET <setting> = <value>;

例如,要禁用VCF INFO字段的解析

SET exon.vcf_parse_info = false;

基准测试

请参阅基准测试 README获取更多信息。

依赖项

~59MB
~1M SLoC