JuseKit(四) —— 序列格式转换以及 Orthogroup 的 cds 提取
更新变动及进度
已有功能的相关教程请见:Juseの软件开发
本次更新变动
- 多种序列格式的转换(包括一些常见的
nex
phylip
等)。 - 将 PEP 序列转变成 CDS 序列。
- 新添了一个学习计时器。
- 修复了部分 Bug。
目前的功能进度
- 提取最长转录本。(已实现)
- 根据 id 提取序列。(已实现)
- 对序列的 id 进行各种处理。(已实现)
- 串联序列并得到分区信息。(已实现)
- 批量改后缀。(已实现)
- 批量进行序列格式转换。(已实现)
- 批量提取 Orthofinder 的 orthogroup 对应的 CDS 序列。(已实现)
- 批量进行序列的物种数和长度过滤。(拟下一次更新)
- 增加自动绘图模块(例如火山图、富集图等)。(考虑中,新的模块将会大幅增加软件大小,Juse 正在权衡利弊)
- 增加各种系统发育分析辅助工具(例如批量计算 RF 值或进行
ILS test
Introgression detection
等)。(考虑中,新的模块将会大幅增加软件大小,Juse 正在权衡利弊)
叠盾警告⚠:不保证这些功能和想法一定会实现,本软件解释权归属 Juse 所有,本软件能走多远具体得看 Juse 能坚持多久。
下载地址:https://github.com/JuseTiZ/JuseKit/releases
序列格式转换及 CDS 提取
本文主要着重于这次更新新增的功能,其他模块请走这里。
序列格式转换
目前支持转换的方式只有 fasta 到其他格式(如图),暂不支持其他格式间的相互转换。
操作如图:
转换后的五种格式:
重点如下:
axt
格式是用来给KaKs_Calculator
计算的,一般来说只能含有两种物种。- 判断序列是
DNA
还是Protein
的逻辑是看属于哪种的序列数更多比如说有三条是 DNA 一条是 Protein 的话依然会判断成 DNA,如果既不是 DNA 又不是 Protein 又或者里面含有识别不了的字符的话那么nex
文件中则会填写Unknown
。 - 默认
gap
是-
。 - 我并没有设置判断序列长度是否相同的函数,所以请务必检查输入的是否为比对后的序列。
PEP 转 CDS
正如这一功能下的注释所说,其实这一个功能只是根据 id 提取序列的高级版,本质上依然需要一个序列文件(里面为序列 id 和其对应的 cds 序列)。
应用场景:把 OrthoFinder 找出的 Orthogroup 对应的 cds 序列给提出来(现在 OrthoFinder 也支持输入核苷酸序列,但是由于比较核苷酸树和氨基酸树时最好使用一致的基因,所以这招依然有应用价值)。
操作方法如图:
最上面一栏输入 cds,第二栏输入 pep 序列所在文件夹(只包含 pep 序列),最下面设置输出路径(最好新建个文件夹输出)。
重点如下:
- cds 要包含所有的 cds,即所有物种的 cds 序列都在里面。
- 如果 cds 较大,那么进行提取前可能有较长的 cds 加载时间,不用着急。
- 如果想把 cds 转成 pep 序列也是可以的,也就是反过来操作,原理一致。
不太正经的小玩意
这次更新还带来了一个功能叫做 学习计时小工具
(在菜单栏中的实用小工具中)。
它会对每天的学习时间进行独立的统计,也就是说它是分天来计算的,然后每天的学习时间会记录在与 JuseKit.exe
文件相同路径下的 records.csv
中。
大致操作如下:
- 打开窗口时它会根据系统时间确定日期,如果本日已有学习记录则会进行续点计时,如果没有则从零开始。
- 点
开始学习
后时间开始积累,点暂停学习
后时间停止积累并且更新学习记录。 - 点击
学习记录
后会读取records.csv
并新开窗口展示,里面有具体的学习日期和学习时长。
自我尝试了几天,只能说这个功能食之无味弃之可惜,但兴许有人会需要它。
不过其优点在于可以独立运行,打开这个窗口以后关闭 JuseKit 主窗口不会影响其使用。
后记
序列格式转换是一个经常需要用到的功能,后续我可能会继续完善它。
复制黏贴:
我会争取将这些功能慢慢完善,让它成为一个具有更广适用性的软件,希望能够帮助到某些盆友,当然我个人认为最大的可能是自娱自乐。
如果这个软件帮助到您了,您可以给它一个小小的 Star 聊表支持,或者在您汇报的时候引一下 https://github.com/JuseTiZ/JuseKit/ ,想必看着还是非常高端大气上档次的。