ucsc ``liftover``基因组坐标转换的纯python实现。

pyliftover的Python项目详细描述


https://travis-ci.org/konstantint/pyliftover.png?branch=master:target:https://travis-ci.org/konstantint/pyliftover

Pyliftover是一个库,用于在不同程序集之间快速轻松地转换基因组(点)坐标。

它使用与ucscliftOver tool相同的逻辑和坐标转换映射。

从当前版本(0.2)开始,pyliftover只进行点坐标的转换,即, 与liftOver不同,它不转换范围,也不提供任何处理床文件的特殊工具。 对于单点坐标,它会产生与liftOver完全相同的输出(目前至少使用hg17ToHg18.over.chain.gz文件进行了验证)。

安装

安装包的最简单方法是通过easy_installpip

$ easy_install pyliftover

用法

库支持的主要用法示例如下:

from pyliftover import LiftOver
lo = LiftOver('hg17', 'hg18')
lo.convert_coordinate('chr1', 1000000)

第一行将自动从ucsc下载hg17-to-hg18坐标转换chain file, 除非它已经缓存或在当前目录中可用。或者,您可以提供自己的链文件:

lo = LiftOver('hg17ToHg18.over.chain.gz')
lo.convert_coordinate('chr1', 1000000, '-')

lo.convert_coordinate调用的结果是None(如果无法识别源染色体名称)或 新组件。列表可以是空的(在新程序集中删除了轨迹)、具有单个元素(轨迹唯一匹配),或者原则上, 具有多个元素(尽管这对于大多数默认的种内基因组转换来说可能是罕见的)。 注意工具中的坐标是基于0的。也就是说,你可以通过^{tt8}在基因组浏览器中引用一个位置$ 对应于pyliftover术语中的坐标9

尽管您可以尝试使用任意链文件(如原始的liftOver工具)应用该工具,但对于 同一物种的不同集合之间的坐标。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在Android的Rest服务中传递列表<Integer>对象和字符串   java Hibernate集合初始化问题   java用ByteBuddy定义一个方法、调用、拦截器和委托给目标?   java递归对象删除   java用标签填充GridPane   java使用ApachePOI在word文档中添加水印   java如何可视化地使用在NetBeans中扩展组件的类?   javascript如何在java web应用程序中刷新页面后保留选中的单选按钮   在Java中,小程序试图使用MouseListener绘制矩形会导致程序崩溃,而不会生成异常   java如何在子注释上下文中使用spring属性源?   当应用到FactoryBean时,java会执行Spring的@Lazy工作吗?   java验证二进制代码和无无限循环的重复程序   java如何将ArgumentCaptor与Mockito一起使用。when()。然后返回()   使用JPA为视图定义DTO和存储库的java问题