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)
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)
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)
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)
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)
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)
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)
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)