#sequence #gb #manipulating #annotations #reading #features #genbank

gb-io

一个用于解析、写入和操作Genbank序列文件的库

8个版本 (重大变更)

0.7.1 2022年3月12日
0.7.0 2022年2月19日
0.6.0 2020年3月9日
0.5.0 2019年4月21日
0.1.0 2019年3月1日

#1484 in 解析器实现

Download history 339/week @ 2024-03-13 648/week @ 2024-03-20 481/week @ 2024-03-27 186/week @ 2024-04-03 428/week @ 2024-04-10 532/week @ 2024-04-17 240/week @ 2024-04-24 207/week @ 2024-05-01 104/week @ 2024-05-08 311/week @ 2024-05-15 446/week @ 2024-05-22 202/week @ 2024-05-29 131/week @ 2024-06-05 259/week @ 2024-06-12 393/week @ 2024-06-19 125/week @ 2024-06-26

914 每月下载量
3 个crate中使用了(2 个直接使用)

MIT 许可证

125KB
3K SLoC

gb-io

crates.io link docs.rs link

这是一个用于解析和操作Genbank (.gb)文件的Rust库。它支持在保留功能注释的同时读取、写入和提取序列的一部分。

它应该能够处理大部分文件。欢迎反馈、改进以及任何使其卡住的.gb文件的详细信息!

示例

反转互补一个序列,保留功能注释。

extern crate gb_io;

use std::fs::File;
use std::io;

use gb_io::reader::SeqReader;

fn main() {
    let file = File::open("mg1655.gb").unwrap();
    let stdout = io::stdout();
    for seq in SeqReader::new(file) {
        let seq = seq.unwrap();
        let rc = seq.revcomp();
        rc.write(stdout.lock()).unwrap();
    }
}

Python绑定

Martin Larraldegb-io 的解析器编写了 Python绑定

依赖项

~2.4–8.5MB
~70K SLoC