处理生信数据过程中常用的python库
2017-07-30 本文已影响86人
栽生物坑里的信息汪
序言
这个注定是个长期更新的文章,也算是个自己的一个总结和目录吧,虽然用的多的库基本不需要继续重新阅读。
生信这个领域也是十分的巨大,所以其实标题也是过于巨大了,接下来肯定还会继续分标题进行描述。
通用,对于脚本
- ipython 最基础的用的最多的一个比较好的IDE
- collections.Counter 计数的快速方法
- collections.defaultdict 创建具有初始值的字典的magic method
- threading 多线程的实现,其实很简单,不要害怕,由于生信里有很多调用命令行的语句,都是时间久但是占用资源不多的,用多线程可以迅速完成任务。
- luigi 流程管理,生信中很多pipelines,如果需要实现,必需有个流程管理的,做好接口,基本上以后都可以无忧。
- subprocess 执行命令行里语句的好模块,当然也可以用os.system
- pandas 数据处理必不可少的模块
- plotly/seaborn/matplotlib 数据可视化模块,顺序基本是我现在的优先级选择,plotly的好处希望大家自己去感受。有空的话我也希望分享一下我现在用plotly的一些体验和心得。
- glob 正则的枚举文件的方法,适用于批量处理大量的数据
- argparse 将python脚本制作成可执行脚本后处理命令行参数的库
- re 正则匹配的库,不管是规整文件还是批处理都有用
基因组方面
- Biopython 一个很老很臃肿的模块,解析生信相关的数据格式时会比较方便,但是因为过于老旧臃肿,很多时候需要自己做出一部分的修改。
- networkx 构建图的一个较好的库,有时需要把一个相关矩阵作为邻接矩阵进行转化,并将其转化为一个图,这样更有利于下一步的设计和思考
- pysam 处理sam文件更好的一个模块
微生物组方面
- qiime 现行分析16s数据较为通用的方法
转录组方面
- htseq count
发现后两个组的内容真的不多,大多数用到python的时候都是用的通用包,其中只能用于某些方面的还是真的很少,而且大多数时候自己写函数更多一点,先这样吧。