2 个版本
| 0.1.1 | 2021 年 1 月 12 日 |
|---|---|
| 0.1.0 | 2021 年 1 月 12 日 |
#565 in 科学
40KB
894 行
GFF_DIFF
一个用于生成两个 GFF3 文件之间差异(JSON 格式)的工具,用 Rust 编写。
安装 Rust
查看说明,或者直接运行
curl https://sh.rustup.rs -sSf | sh
编译工具
使用git clone https://github.com/magnusmanske/gff_diff.git获取工具源代码,然后使用
cargo build --release
来构建二进制文件(target/release/gff_diff)。
用法
要比较original.gff和modified.gff,使用
gff_diff original.gff modified.gff
输出格式
输出是一个 JSON 结构。将original.gff转换为modified.gff所需的变化位于{"changes":[]}数组中的对象。每个对象都有一个action、一个what和一个id键。《what》可以是《row》(GFF 文件中的一行,由《id》表示)或《attribute》(行的最后一列)。
action可以是
add/remove用于what=attributeadd/remove/update用于what=row
对于 what=row / action=update,存在 key 和 value 键,表示应更改的内容。key 可以是 seqname、source、feature_type、start、end、score、strand 或 frame 之一。value 是表示给定键的新值的字符串。
对于 what=row / action=add/remove,一个 data 键包含一个表示要添加或删除的整个行的 JSON 结构。
对于 what=attribute / action=add/remove,存在 key 和 value 键,表示应添加到或从属性键中删除的值。
依赖关系
~16MB
~272K SLoC