蛋白质谱初等分析工具MScompare
前几天比较闲就写了这么一个东西,主要是之前就有几位同学跟我聊起过这方面的需求。实现起来也没什么技术难度于是就自己动手做了一个可视化的程序。不过讲真如果直接用python命令行处理真的方便太多太多。整个程序自然是完全开源的。
Github地址:https://github.com/Syaoran-Tang/MScompare
以下为readme.md的内容~~
介绍
这是一个设计用来对蛋白质谱结果进行初等分析的工具。也可以用来对比分析多个含有部分相同内容的文本文档工具
功能
- 支持txt文件和pdf文件(0.2版新增)的读取。
- 支持对数据集进行增加、(批量)删除、编辑。
- 对导入的质谱结果集合进行取交集、并集、差集操作。
- 支持自定义计算式。
- 推荐数据量总大小<1M,若需处理过大的数据集请移步python或R等更专业的分析工具:-)
下载
https://github.com/Syaoran-Tang/MScompare/releases
使用方法
- 通过
Import
按钮将数据导入程序,每个文件将对应一个数据集合。
- 对于txt文件,需要将质谱pdf文件中的分析结果复制到一个txt文件中,保证每一行对应一个基因。
- 对于pdf文件,程序将自动检索文件中所有含有指定基因号的文本(以一行为单位),程序会排除重复出现的基因号。依PDF文件的大小不一,读取可能会花费一点时间,请耐心等待。
- 导入的数据集将显示在
View
面板的左侧,单击选中后,可以看到导入的数据集。在Description
列中,提取出的基因号将用$
代替,显示在左侧的ID
列中,每行的行号显示在行头。 ID
和Description
均可直接编辑(左键双击即可激活编辑);左键单击行号可以选中整行;Shift/Ctrl+左键单击可以连续选中多行;然后可以通过按Delete来删除选中的行。在编辑完成后,需要点击Save
来保存对数据集的更改,此时数据集中的行号将重新分配。- 程序将
RegEx
框中提供的正则表达式提取每行中的基因号。如果需要提取形如AT1G12345
的基因号,可以将正则表达式修改成AT(\d{1})G(\d{5})
。或者需要提取形如AT1G12345.1
的基因号,对应的正则表达式为AT(\d{1})G(\d{5}\.\d{1})
- 在选中了某一个数据集之后,右键单击可以出现
Rename
和Insert
两个选项。Rename
可以对该数据集进行重命名,程序会自动对每个数据集编号并根据给出的名称重新命名数据集。所以理论上是可以导入多个相同的数据集的(然而谁这么无聊啊=。=) - 单击
Insert
可以将选择的数据集插入到下方的CalculateExp
中,当然你也可以自己手动输入(包括Shortcut
面板中的几种运算符)。每个数据集用#...#
修饰用以和运算符区别。随便输入的话请放心,程序会提~醒你的:-) - 计算结果显示在右侧的
Result
面板中,可以使用Export
将结果导出。
致谢
感谢Ryan同学提供测试数据
开源信息/License
- 本程序使用MIT License。
- 逆波兰式算法实现参考了: http://www.cnblogs.com/lxfqlcz/archive/2011/08/02/2124854.html
- PDF文件读取使用了 http://www.antoniob.com/pdfbox-121-for-net-binaries.html 提供的dll包。
以下废话
本作品初衷是为了帮助广大不熟悉编程的同学处理质谱数据,纯属闲暇时的非正式作品。如果有bug或者功能需求可以在github上发表issue留言:https://github.com/Syaoran-Tang/MScompare/issues
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。