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=attribute
add
/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