10个不稳定版本 (4个重大变更)
0.14.0 | 2022年7月21日 |
---|---|
0.12.0 | 2022年7月4日 |
0.11.2 | 2022年7月3日 |
0.11.0 | 2021年11月8日 |
0.9.11 | 2021年9月18日 |
#9 in #生物
每月21次下载
3MB
824 行
brrrr
brrrr是一个CLI,用于简化常见的生物信息学任务,而brrrr-lib是一个可安装的软件包中的抽象代码。
brrrr
CLI通过命令行界面公开了许多相关的brrrr
功能。brrrr-lib
旨在用于其他模块。
CLI帮助屏幕。
brrrr --help
警告 brrrr非常原始,可能随时更改或中断。
用例
用例
- 将FASTA转换为JSON
- 将FASTA转换为parquet,反之亦然
将FASTA转换为JSON
作为一个快速示例,假设你有一个FASTA文件,并希望将其转换为json。
; echo ">1\nATCG\n>2\nTAGC\n" | brrrr fa2jsonl | jq
{
"id": "1",
"desc": null,
"seq": "ATCG"
}
{
"id": "2",
"desc": null,
"seq": "TAGC"
}
将FASTA转换为parquet,反之亦然
Parquet是一个用于大规模数据存储的有用文件格式,存在许多与之交互的工具。例如,DuckDB可以用来用SQL查询parquet文件。
从Swissprot数据集开始,使用出色的seqkit来查找一些摘要统计信息。
$ seqkit stats uniprot-reviewed_yes.fasta
file format type num_seqs sum_len min_len avg_len max_len
uniprot-reviewed_yes.fasta FASTA Protein 561,176 201,758,313 2 359.5 35,213
将其转换为parquet...
$ brrrr fa2pq ./uniprot-reviewed_yes.fasta swissprot.parquet && \
test -f swissprot.parquet && \
echo "swissprot.parquet exists"
swissprot.parquet exists
将其加载到DuckDB中,选择长度超过1000aa的序列,然后创建新的parquet文件。
$ duckdb -c "COPY (SELECT * FROM 'swissprot.parquet' WHERE length("sequence") >= 1000) TO 'swissprot.1000.parquet' (FORMAT PARQUET);"
$ duckdb -c "SELECT COUNT(*) FROM 'swissprot.1000.parquet'"
┌──────────────┐
│ count_star() │
├──────────────┤
│ 18236 │
└──────────────┘
从parquet转换回FASTA,然后检查min_len是否符合预期。
$ brrrr pq2fa swissprot.1000.parquet swissprot.1000.fasta && seqkit stats swissprot.1000.fasta
file format type num_seqs sum_len min_len avg_len max_len
swissprot.1000.fasta FASTA Protein 18,236 28,228,604 1,000 1,548 35,213
安装
CLI是可执行入口点,尽管库可以单独安装。
CLI
为以下平台构建了可执行文件
x86_64-apple-darwin
x86_64-unknown-linux-musl
aarch64-unknown-linux-gnu
x86_64-pc-windows-msvc
从GitHub的发行版页面下载可执行文件。
brrrr-lib
brrrr-lib
是一个包含抽象代码的crate,由CLI使用。
[dependencies]
brrrr-lib = "0.14.0"
文档可在以下位置找到: docs.rs/brrrr-lib。
依赖项
~23–31MB
~617K SLoC