通过吸管快速从Juicebox HIC文件中提取数据

hic-straw的Python项目详细描述


吸管

straw允许对.hic文件进行编程访问。 .hic文件存储hi-c实验的接触矩阵和 规范化和期望向量,以及头中的元数据。

主要函数straw接受规范化、文件名或URL, 染色体1(可选范围)、染色体2(可选范围) 所需的bin是以片段还是以基对分隔,以及bin大小

然后读取报头,跟随各种指向所需矩阵的指针 和标准化向量,存储为[x,y,count]

Usage: straw <NONE/VC/VC_SQRT/KR> <hicFile(s)> <chr1>[:x1:x2] <chr2>[:y1:y2] <BP/FRAG> <binsize>

有关更多文档,请参见https://github.com/theaidenlab/straw/wiki/Python

安装

Straw使用requests library来支持url确保已安装

示例

  • 在本地文件“hic001.hic”中以1MB分辨率提取X染色体上的所有读取,不进行规范化

    fromstrawimportstrawresult=straw.straw('NONE','HIC001.hic','X','X','BP',1000000)# the values returned are in x / y / countsforiinrange(len(result[0])):print("{0}\t{1}\t{2}".format(result[0][i],result[1][i],result[2][i]))
  • 从Rao和Huntley等人的MAPQ 30组合图中提取500KB分辨率下的所有读取数据,并进行VC(覆盖率)标准化2014年

    fromstrawimportstrawresult=straw.straw('VC','https://hicfiles.s3.amazonaws.com/hiseq/gm12878/in-situ/combined_30.hic','4','4','BP',500000)# the values returned are in x / y / countsforiinrange(len(result[0])):print("{0}\t{1}\t{2}".format(result[0][i],result[1][i],result[2][i]))
  • 用KR(平衡)规范化以25KB分辨率提取1号染色体上介于1MB和7.5MB之间的读取并写入文件:

    fromstrawimportstrawstraw.printme("KR","HIC001.hic","1:1000000:7500000","1:1000000:7500000","BP",25000,'out.txt')
  • 用VC(香草覆盖率)标准化,以500片段分辨率提取5号染色体和12号染色体之间的所有染色体间读数:

    fromstrawimportstrawresult=straw.straw("VC","HIC001.hic","5","12","FRAG",500)# the values returned are in resultsforiinrange(len(result[0])):print("{0}\t{1}\t{2}".format(result[0][i],result[1][i],result[2][i]))

有关如何将结果打印到文件的示例,请参见脚本straw.py

读取标题

有关读取hic文件头并输出信息(包括分辨率)的python脚本,请参见文件read_hic_header.py

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

推荐PyPI第三方库


热门话题
java应用程序不是在Eclipse中运行,而是在命令行中运行   swing Java图形组件问题。似乎找不到错误   我需要键盘。close();让代码正常工作?   Springboot中的java HttpSession   抽象语法树我想添加一个语句。我试图解析它,java解析器异常被抛出。如何克服它?   java Hibernate:清理会话   具有不连续子集的java划分问题   java正则表达式查找最后一个冒号后的字符串   java从SpringShell执行OS命令   Java扫描器字符串输入   java字符串索引越界异常(charAt)   java执行器服务终止被卡住   Springockito没有继承java@ContextConfiguration   java如何为一个servlet映射多个url   java安卓获取命令的stderr   java生成类型。表:数据库中的大数字   安卓 Getter Setter返回NothingJava