subseq enhancement - fasta ID and comment for bed, gtf and gff
还没有人认领这个 Issue。
评估
- 难度
- 5/5
- 预计耗时
- 一周以上
- 新手友好度
- 25/100
- Issue 类型
- 功能
- 描述清晰度
- 需要澄清
- 活跃度
- 停滞
- 技术栈
- go
- 领域
- bioinformatics, cli
调研方向
Start by reading the seqkit subseq command and its existing BED/GTF handling, then review the related issues #154 and #89. Define the scope for GFF3 support, selectable ID tags, and additional FASTA comment fields before adding focused tests for the agreed behavior.
由索引模型根据 Issue 内容生成。
描述
Hi,
thanks so much for seqkit - it's one of the tools I use almost on a daily basis and I love it!
There is one feature though, that I feel is lacking a bit. I regularly use seqkit subseq to extract features based on annotations files. Ideally, I would like to have more control over the ID that is given to the extracted fasta sequences and possibly the comment as well. Usually, my annotations come in gff3 (which is not supported), so I convert to bed, and then I use a perl-one-liner to turn the fasta comment into the fasta ID. It works, but since I use it so often, and I guess others might too, it feels like it would be very useful if seqkit natively provided that functionality.
This issue has been raised before: #154, #89
# foo.fna
>foo
GTTTTGTTGACCAGACGATA
# foo.gff
foo . . 3 10 . + . ID=foo_1;Name=gene-foo;product="bla bla bla";
# This is how most my calls look - it works but it feels a bit clunky :)
seqkit subseq --bed <(gff2bed foo.gff) foo.fna | perl -pe 's/>\S+\s/>/'
[INFO] read BED file ...
Processing foo.gff
[INFO] 1 BED features loaded
[INFO] create FASTA index for foo.fna
>foo_1
TTTGTTGA
So what I would which for in terms of enhancements for seqkit would be:
-
gff3 support: gff3 seems so similar to gtf that it feels like adding support for it would not be a big issue, the parsing of tags would have to be modified slightly. But I think it would be very useful to many users.
-
ID tag: A flag like
--id-tagcould be added, similar to--gtf-tag. If set for gtf (/gff) it would tell which tag to use as ID instead of the default <seq_id:from-to> pattern. For bed, it could just accept a number indicating the column that should be used for IDs... -
In a perfect world there would also be an option to add additional tags/columns into the comment section of the fasta header, i.e. something multiple
--gtf-tags gene_id,transcript_id,product.
Obviously, those aren't crucial issues, but I think they would help to further improve seqkit API.
Cheers
Thomas
- 主要语言
- Go
- 星标
- 1.6k
- 派生
- 189
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
- 提供 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 没有贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
shenwei356/seqkit 的其他 Issue
-
convert: no range check between Phred encodings, so a wrong --from writes a broken FASTQ (exit 0)未关闭
难度 2/5 1-3 小时 新手友好度 82/100
shenwei356/seqkit#612 · 1 条评论 ·
-
难度 5/5 一周以上 新手友好度 35/100
shenwei356/seqkit#620 ·
-
sliding, merge-slides, mutate, translate, replace: panics, lost windows and wrong output with exit 0未关闭
难度 5/5 一周以上 新手友好度 35/100
shenwei356/seqkit#619 ·
-
难度 5/5 一周以上 新手友好度 20/100
shenwei356/seqkit#618 ·
-
难度 5/5 一周以上 新手友好度 25/100
shenwei356/seqkit#617 ·
查看 shenwei356/seqkit 的全部 Issue
相似的 Issue
-
难度 1/5 1 小时以内 新手友好度 72/100
slavakurilyak/awesome-ai-agents#845 ·
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 68/100
维护者通常 3 天内回复
-
难度 2/5 1-3 小时 新手友好度 85/100
-
难度 2/5 1-3 小时 新手友好度 74/100
JakeChampion/lang#13132 ·
维护者通常 1 天内回复
-
[BUG] deploy.restart_policy without condition drops the restart policy可能已有人在做 @akshat-lakhera 今天认领。 未关闭
难度 2/5 1-3 小时 新手友好度 82/100
docker/compose#14383 · 1 条评论 ·
维护者通常 1 天内回复