美文网首页
CscoreTool接HicExplorer进行A/B分析

CscoreTool接HicExplorer进行A/B分析

作者: 夸克光子 | 来源:发表于2020-10-25 10:27 被阅读0次

    主要提及summary文件的生成过程

    summary文件具体内容:

    第1列). Read Name 名称

    第2列). 染色体

    第3列). 位置

    第4列). 方向

    第5列). 染色体

    第6列). 位置

    第7列). 方向

    首先由hicexplorer中hicBuildMatrix建立矩阵时,参数-outBam生成一个bam文件

    Output bam file to process. Optional parameter. A bam file containing all valid Hi-C reads can be created using this option. This bam file could be useful to inspect the distribution of valid Hi-C reads pairs or for other downstream analyses, but is not used by any HiCExplorer tool. Computation will be significantly longer if this option is set.

    由此bam文件生成CscoreTool所需要的summary文件

    首先将成对数据合并为一行
    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    
    old = open('/home/panda/桌面/new_m1-1.bed','r')
    new = open('/home/panda/桌面/new_m1-1.bed','w')
    
    line0 = old.readline()
    while line0:
        line = line0.rstrip().split('\t')
        line1 = old.readline().rstrip().split('\t')
        line2 = (line[0] + '\t' + line[1] + '\t' + line[2] + '\t' + line[3] + '\t' + line[4] + '\t' + line[5] + '\t' + line1[0] + '\t' + line1[1] + '\t' + line1[2] + '\t' + line1[3] + '\t' + line1[4] + '\t' + line1[5] + '\n')
        new.write(line2)
        line0 = old.readline()
    
    其次提取summary文件所需信息
    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    
    old = open('/home/panda/桌面/new_m1-1.bed','r')
    new = open('/home/panda/桌面/new_new_M1-1.summary','w')
    
    line0 = old.readline()
    while line0:
        line = line0.rstrip().split('\t')
        line1 = (line[3] + '\t' + line[0] + '\t' + line[1] + '\t' + line[5] + '\t' + line[6] + '\t' + line[7] + '\t' + line[11] + '\n')
        new.write(line1)
        line0 = old.readline()
    

    2、此外windows.bed文件的生成(该文件用于指定要分析的基因组窗口大小)

    下载CscoreTool文件夹中有generateEqualLengthBed.cpp文件

    对generateEqualLengthBed.cpp执行命令

    $ g++ -o generateEqualLengthBed generateEqualLengthBed.cpp
    

    生成一个可执行文件generateEqualLengthBed

    ###执行以下命令生成windows.bed
    ###对于常见物种chrSizes.txt(染色体大小文件)可以直接下载,直接执行下面的命令
    $ generateEqualLengthBed <chrSizes.txt> <out.bed> <windowsize>
    
    ###不常见的物种,chrSizes.txt可以由samtools生成的**reference.fasta.fai**文件代替
    ###执行以下命令
    $ samtools faidx reference.fasta  ##会生成reference.fasta.fai文件
    $ generateEqualLengthBed <reference.fasta.fai> <out.bed> <windowsize>  ##生成windows.bed文件
    

    番外,文件中特定列的内容替换

    ###将第一列内容替换为:chr1
    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    
    old = open('/home/panda/桌面/M2.bedGraph','r')
    new = open('/home/panda/桌面/new_M2.bedGraph','w')
    
    line0 = old.readline()
    while line0:
        line = line0.rstrip().split('\t')
        a = 'chr1'
        line[0] = a
        line1 = (line[0] + '\t' + line[1] + '\t' + line[2] +'\t' + line[3] + '\n')
        new.write(line1)
        line0 = old.readline()
    

    相关文章

      网友评论

          本文标题:CscoreTool接HicExplorer进行A/B分析

          本文链接:https://www.haomeiwen.com/subject/yyvgmktx.html