3个版本
0.3.4-beta.9 | 2023年10月27日 |
---|
#2987 in 解析器实现
7KB
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;
基准测试
依赖项
~59MB
~1M SLoC