Пример #1
0
def test_pca_bigwig_gene_density_intermediate_matrices_norm():
    pca1 = NamedTemporaryFile(suffix='.bw', delete=False)
    pca2 = NamedTemporaryFile(suffix='.bw', delete=False)
    pearson_matrix = NamedTemporaryFile(suffix='.cool', delete=False)
    obs_exp_matrix = NamedTemporaryFile(suffix='.cool', delete=False)
    pca1.close()
    pca2.close()
    pearson_matrix.close()
    obs_exp_matrix.close()
    matrix = ROOT + "small_test_matrix.h5"
    gene_track = ROOT + 'dm3_genes.bed.gz'
    chromosomes = 'chrX chrXHet'
    args = "--matrix {} --outputFileName {} {} -f bigwig -noe 2 \
    --extraTrack {} --chromosomes {} --pearsonMatrix {} --obsexpMatrix {}\
    --norm".format(matrix, pca1.name, pca2.name, gene_track, chromosomes,
                   pearson_matrix.name, obs_exp_matrix.name).split()
    hicPCA.main(args)

    chrom_list = ['chrX', 'chrXHet']
    assert are_files_equal_bigwig(ROOT + "hicPCA/pca1_gene_track.bw",
                                  pca1.name, chrom_list)
    assert are_files_equal_bigwig(ROOT + "hicPCA/pca2_gene_track.bw",
                                  pca2.name, chrom_list)

    test_pearson = hm.hiCMatrix(ROOT + "hicPCA/pearson_norm.cool")

    new_pearson = hm.hiCMatrix(pearson_matrix.name)

    test_obs_exp = hm.hiCMatrix(ROOT + "hicPCA/obsexp_norm.cool")

    new_obs_exp = hm.hiCMatrix(obs_exp_matrix.name)

    # load h5 matrices to compare if they are store the same data
    test_obs_exp_h5 = hm.hiCMatrix(ROOT + "hicPCA/obsexp_norm.h5")

    test_pearson_h5 = hm.hiCMatrix(ROOT + "hicPCA/pearson_norm.h5")

    nt.assert_array_almost_equal(test_pearson.matrix.data,
                                 new_pearson.matrix.data,
                                 decimal=DELTA_DECIMAL)
    nt.assert_array_almost_equal(test_obs_exp.matrix.data,
                                 new_obs_exp.matrix.data,
                                 decimal=DELTA_DECIMAL)

    nt.assert_array_almost_equal(test_pearson_h5.matrix.data,
                                 new_pearson.matrix.data,
                                 decimal=DELTA_DECIMAL)
    nt.assert_array_almost_equal(test_obs_exp_h5.matrix.data,
                                 new_obs_exp.matrix.data,
                                 decimal=DELTA_DECIMAL)

    os.unlink(pca1.name)
    os.unlink(pca2.name)
    os.unlink(obs_exp_matrix.name)
    os.unlink(pearson_matrix.name)
Пример #2
0
def test_pca_bedgraph_ignore_masked_bins():
    pca1 = NamedTemporaryFile(suffix='.bedgraph', delete=False)
    pca2 = NamedTemporaryFile(suffix='.bedgraph', delete=False)

    pca1.close()
    pca2.close()
    matrix = ROOT + "small_test_matrix_50kb_res.h5"
    args = "--matrix {} --outputFileName {} {} -f bedgraph -noe 2 --ignoreMaskedBins"\
        .format(matrix, pca1.name, pca2.name).split()
    hicPCA.main(args)

    assert are_files_equal(ROOT + "hicPCA/pca1_ignoredMaskedBins.bedgraph", pca1.name)
    assert are_files_equal(ROOT + "hicPCA/pca2_ignoredMaskedBins.bedgraph", pca2.name)

    os.unlink(pca1.name)
    os.unlink(pca2.name)
Пример #3
0
def test_pca_bigwig():
    pca1 = NamedTemporaryFile(suffix='.bw', delete=False)
    pca2 = NamedTemporaryFile(suffix='.bw', delete=False)

    pca1.close()
    pca2.close()
    matrix = ROOT + "small_test_matrix_50kb_res.h5"
    args = "--matrix {} --outputFileName {} {} -f bigwig -noe 2".format(
        matrix, pca1.name, pca2.name).split()
    hicPCA.main(args)

    assert are_files_equal_bigwig(ROOT + "hicPCA/pca1.bw", pca1.name)
    assert are_files_equal_bigwig(ROOT + "hicPCA/pca2.bw", pca2.name)

    os.unlink(pca1.name)
    os.unlink(pca2.name)
Пример #4
0
def test_pca_bedgraph_lieberman():
    pca1 = NamedTemporaryFile(suffix='.bedgraph', delete=False)
    pca2 = NamedTemporaryFile(suffix='.bedgraph', delete=False)

    pca1.close()
    pca2.close()
    matrix = ROOT + "small_test_matrix_50kb_res.h5"
    args = "--matrix {} --outputFileName {} {} -f bedgraph --whichEigenvectors  1 2 --method lieberman"\
        .format(matrix, pca1.name, pca2.name).split()
    hicPCA.main(args)
    # compute(hicPCA.main, args, 5)
    assert are_files_equal(ROOT + "hicPCA/pca1.bedgraph", pca1.name)
    assert are_files_equal(ROOT + "hicPCA/pca2.bedgraph", pca2.name)

    os.unlink(pca1.name)
    os.unlink(pca2.name)
Пример #5
0
def test_pca_bedgraph_gene_density():
    pca1 = NamedTemporaryFile(suffix='.bedgraph', delete=False)
    pca2 = NamedTemporaryFile(suffix='.bedgraph', delete=False)

    pca1.close()
    pca2.close()
    matrix = ROOT + "small_test_matrix.h5"
    gene_track = ROOT + 'dm3_genes.bed.gz'
    chromosomes = 'chrX chrXHet'
    args = "--matrix {} --outputFileName {} {} -f bedgraph -noe 2 --geneTrack {} --chromosomes {}".format(
        matrix, pca1.name, pca2.name, gene_track, chromosomes).split()
    hicPCA.main(args)

    assert are_files_equal(ROOT + "hicPCA/pca1_gene_track.bedgraph", pca1.name)
    assert are_files_equal(ROOT + "hicPCA/pca2_gene_track.bedgraph", pca2.name)

    os.unlink(pca1.name)
    os.unlink(pca2.name)
Пример #6
0
def test_pca_bedgraph_histoneMark_track():
    pca1 = NamedTemporaryFile(suffix='.bedgraph', delete=False)
    pca2 = NamedTemporaryFile(suffix='.bedgraph', delete=False)

    pca1.close()
    pca2.close()
    matrix = ROOT + "small_test_matrix.h5"
    extra_track = ROOT + 'bigwig_chrx_2e6_5e6.bw'
    chromosomes = 'chrX '
    args = "--matrix {} --outputFileName {} {} -f bedgraph -noe 2 \
    --extraTrack {} --chromosomes {}"\
    .format(matrix, pca1.name, pca2.name, extra_track, chromosomes).split()
    hicPCA.main(args)
    assert are_files_equal(ROOT + "hicPCA/pca1_chip_track.bedgraph",
                           pca1.name)
    assert are_files_equal(ROOT + "hicPCA/pca2_chip_track.bedgraph",
                           pca2.name)

    os.unlink(pca1.name)
    os.unlink(pca2.name)
Пример #7
0
def test_pca_bigwig():
    pca1 = NamedTemporaryFile(suffix='.bw', delete=False)
    pca2 = NamedTemporaryFile(suffix='.bw', delete=False)

    pca1.close()
    pca2.close()
    matrix = ROOT + "small_test_matrix_50kb_res.h5"
    args = "--matrix {} --outputFileName {} {} -f bigwig -noe 2"\
        .format(matrix, pca1.name, pca2.name).split()
    hicPCA.main(args)

    chrom_list = ['chr2L', 'chr2R', 'chr3L', 'chr3R', 'chr2RHet',
                  'chr3RHet', 'chr2LHet', 'chr4', 'chrU', 'chrX',
                  'chrXHet', 'chr3LHet']
    assert are_files_equal_bigwig(ROOT + "hicPCA/pca1.bw",
                                  pca1.name, chrom_list)
    assert are_files_equal_bigwig(ROOT + "hicPCA/pca2.bw",
                                  pca2.name, chrom_list)

    os.unlink(pca1.name)
    os.unlink(pca2.name)
Пример #8
0
def test_pca_bigwig_gene_density():
    pca1 = NamedTemporaryFile(suffix='.bw', delete=False)
    pca2 = NamedTemporaryFile(suffix='.bw', delete=False)

    pca1.close()
    pca2.close()
    matrix = ROOT + "small_test_matrix.h5"
    gene_track = ROOT + 'dm3_genes.bed.gz'
    chromosomes = 'chrX chrXHet'
    args = "--matrix {} --outputFileName {} {} -f bigwig -noe 2 \
    --extraTrack {} --chromosomes {}"\
    .format(matrix, pca1.name, pca2.name, gene_track, chromosomes).split()
    hicPCA.main(args)

    chrom_list = ['chrX', 'chrXHet']
    assert are_files_equal_bigwig(ROOT + "hicPCA/pca1_gene_track.bw",
                                  pca1.name, chrom_list)
    assert are_files_equal_bigwig(ROOT + "hicPCA/pca2_gene_track.bw",
                                  pca2.name, chrom_list)

    os.unlink(pca1.name)
    os.unlink(pca2.name)