コード例 #1
0
ファイル: test_io.py プロジェクト: danielsday/cooler
def should_not_depend_on_chunksize(bintable):
    # try different chunk sizes
    reader = cooler.io.HDF5Aggregator(mock_reads,
                                      chromsizes,
                                      bintable,
                                      chunksize=66)
    cooler.io.create(testfile_path, chromsizes, bintable, reader)
    with h5py.File(testfile_path, 'r') as h5:
        oc1 = h5['indexes']['chrom_offset'][:]
        ob1 = h5['indexes']['bin1_offset'][:]
        p1 = cooler.pixels(h5, join=False)

    reader = cooler.io.HDF5Aggregator(mock_reads,
                                      chromsizes,
                                      bintable,
                                      chunksize=666)
    cooler.io.create(testfile_path, chromsizes, bintable, reader)
    with h5py.File(testfile_path, 'r') as h5:
        oc2 = h5['indexes']['chrom_offset'][:]
        ob2 = h5['indexes']['bin1_offset'][:]
        p2 = cooler.pixels(h5, join=False)

    assert np.all(oc1 == oc2)
    assert np.all(ob1 == ob2)
    assert np.all(p1.values == p2.values)
コード例 #2
0
ファイル: test_io.py プロジェクト: danielsday/cooler
def should_work_with_int32_cols(bintable):
    # int64
    reader = cooler.io.HDF5Aggregator(mock_reads,
                                      chromsizes,
                                      bintable,
                                      chunksize=66)
    cooler.io.create(testfile_path, chromsizes, bintable, reader)
    with h5py.File(testfile_path, 'r') as h5:
        oc1 = h5['indexes']['chrom_offset'][:]
        ob1 = h5['indexes']['bin1_offset'][:]
        p1 = cooler.pixels(h5, join=False)

    # int32
    mock_reads32 = MockReads({
        'chrms1': mock_reads['chrms1'].astype(np.int32),
        'cuts1': mock_reads['cuts1'].astype(np.int32),
        'chrms2': mock_reads['chrms2'].astype(np.int32),
        'cuts2': mock_reads['cuts2'].astype(np.int32),
    })
    reader = cooler.io.HDF5Aggregator(mock_reads32,
                                      chromsizes,
                                      bintable,
                                      chunksize=66)
    cooler.io.create(testfile_path, chromsizes, bintable, reader)
    with h5py.File(testfile_path, 'r') as h5:
        oc2 = h5['indexes']['chrom_offset'][:]
        ob2 = h5['indexes']['bin1_offset'][:]
        p2 = cooler.pixels(h5, join=False)

    assert np.all(oc1 == oc2)
    assert np.all(ob1 == ob2)
    assert np.all(p1.values == p2.values)