GEPIA 是北京大学张泽民教授团队开发的TCGA数据库数据分析网页工具。掌握其API使用方法,便于实现批量操作,提高工作效率。
使用API
安装第三方库
spider, !pip3 install gepia
,
修改gepia.py
实现对所爬取的pdf结果文件名的修改
pdf转为png
pdf转为png方便查看结果。
不过应该同时保留原来的pdf版本,因为pdf版本的图片后续如果需要图片作为figure进行发表,那么pdf格式的文件容易进行修改并获得高分辨率的图片。
实例的应用实战
GEPIA对于查看TCGA 以及GTEX联合数据分析结果很方便,但是存在的问题是:
- 网页工具对于批量的分析任务需要重复提交逐一分析,很麻烦。
- 对于需要频繁修改分析参数来查看分析结果的变化时,需要反复修改提交,很麻烦。
- 分析结果生成的pdf网页结果图,保存时的命名是随机命名,不包含分析参数,需要逐一对应地修改命名添加分析参数,很麻烦。
- 分析结果是pdf格式的图片,这对于用AI进行编辑图片并导出高分辨率格式的图片用于发表很方便,但是对于需要同时查看多个分析结果图片时,不如直接查看图片格式的分析结果方便,所以想进行批量转换为图片格式。
实例的解决策略
所以想通过API解决上述问题,幸运的是,北大的GEPIA开发者提供了Python 的API使用,是一个python package,gepia。可以看到说明页面中的对使用方法的介绍,所以进行安装pip install gepia
,安装后即可以重现说明页面中举例的使用方法,就可以实现批量的提交分析并下载分析结果的pdf格式图片。从示例页面中,整理合并获得了两个示例脚本文件,分别是gepiaBoxp.py
和 gepiaSurvp.py
。
如此,便解决了第一个和第二个问题,可以使用for loop ,修改不同的分析参数进行批量分析。
第三个问题的解决,需要查看其API的源代码文件,即gepia.py
(注意不要修改存储在site-packages文件夹中的库源代码文件)。查看源代码以后,可以发现,整个代码是面向对象的编程设计,如果需要修改保存的结果图片命名,只需要在每一个分析完成后,用 fname变量存储分析所用的关键参数,然后对代码刚刚保存的pdf文件进行重命名为fname即可。最终得到的脚本文件是gepiaApi.py
,使用这个脚本,就不需要另外import gepia
,因为这个脚本是在原来源代码基础上修改的,所有函数都在,只是添加了两行重命名的代码,并且用survival 分析的一个for loop 进行了实践,测试worked。已使用此脚本分析了NAPRT、NAMPT在3个癌症中OS DFS用不同阈值划分高表达和低表达组的条件时的生存结果。
第四个问题的解决,写了一个pdf2pngscript.py
的脚本文件,可以实现将一个文件夹中的pdf文件批量转化为png格式的清晰图片。因为考虑到这一功能比较常用,所以就添加了easygui的内容,得到脚本pdf2png.py
,然后通过pyinstaller 生成了exe可执行文件,测试worked.
知识点
- 网页API工具的使用,GEPIA是一个极好的例子,使用它大大方便了我对基因TCGA数据的快速分析
- gepia的源代码是一个面向对象编程的极好例子,显示了面向对象编程的优势。