Esempio n. 1
0
def test_peek():
    data = np.arange(10).reshape(5,2)
    s = Stream(data, chunksize=3)
    xpeek = s.peek()
    assert eq(xpeek, data[:3, :])
    xfull = s.call()
    assert eq(xfull, data)
Esempio n. 2
0
def test_chain():
    assert eq(
        np.vstack((data1, data1)),
        Stream(data1,
               sr=1,
               chunksize=5).chain(Stream(data1,
                                         sr=1,
                                         chunksize=6)).call())
Esempio n. 3
0
def test_padded_chunks():
    stream = Stream(data2, sr=10, chunksize=20) # 100 x 5
    pchunks = list(stream.padded_chunks(10))
    assert len(pchunks[0]) == 20 + 10 + 10
    assert eq(pchunks[0][:10, :], np.zeros((10, 5)))
    assert eq(pchunks[0][10:, :], data2[:30, :])
    assert eq(pchunks[1][10:, :], data2[20:50, :])
    assert eq(pchunks[-1][:30, :], data2[-30:, :])
    assert eq(pchunks[-1][30:, :], np.zeros((10, 5)))
Esempio n. 4
0
def test_split():
    columns = {i: {'units': None, 'name': str(i)} for i in range(5)}
    attrs = {'columns': columns}
    s = Stream(data2, sr=1, attrs=attrs).split(1, 3)
    y = s.call()
    assert eq(data2[:, (1, 3)], y)
    assert len(s.attrs['columns']) == 2
    assert s.attrs['columns'][0]['name'] == '1'
    assert s.attrs['columns'][1]['name'] == '3'
Esempio n. 5
0
def test_write_read(tmpdir):
    fname = os.path.join(tmpdir.strpath, "mydat")
    columns = bark.sampled_columns(data1)
    attrs = dict(sampling_rate=100, columns=columns, fluffy="cat")
    a = Stream(data1, attrs=attrs)
    a.write(fname)
    b = read(fname)
    assert eq(data1, b.call())
    for key in attrs:
        assert attrs[key] == b.attrs[key]
Esempio n. 6
0
def test_merge():
    assert eq(
        np.hstack((data1, data1)),
        Stream(data1, sr=1,
               chunksize=10).merge(Stream(data1, sr=1, chunksize=10)).call())

    assert eq(
        np.hstack((data1, data1)),
        Stream(data1, sr=1,
               chunksize=10).merge(Stream(data1, sr=1, chunksize=11)).call())
Esempio n. 7
0
def test_merge_columns():
    dat1 = np.arange(20).reshape(10,2)
    dat1attrs = {'columns': {0: {'units': None, 'name': 'a'},
                            1: {'units': None, 'name': 'b'}}}
    dat2 = np.arange(10).reshape(10,1)
    dat2attrs = {'columns': {0: {'units': None, 'name': 'c'}}}
    s1 = Stream(dat1, sr=1, attrs=dat1attrs)
    s2 = Stream(dat2, sr=1, attrs=dat2attrs)
    s3 = s1.merge(s2)
    for index, name in zip(range(3), 'abc'):
        assert s3.attrs['columns'][index]['name'] == name
Esempio n. 8
0
def test_write(tmpdir):
    fname = os.path.join(tmpdir.strpath, "mydat")
    columns = bark.sampled_columns(data1)
    attrs = dict(sampling_rate=100, columns=columns, fluffy="cat")
    a = Stream(data1, attrs=attrs)
    a.write(fname)
    sdataset = bark.read_sampled(fname)
    sdata = sdataset.data
    assert eq(data1, sdata)
    sattrs = sdataset.attrs
    for key in attrs:
        assert attrs[key] == sattrs[key]
Esempio n. 9
0
def test_convolve():
    win = [.1, 0, 3]
    for data in (data2, data3, data4):
        x = np.column_stack([fftconvolve(data[:, i], win)
                             for i in range(data.shape[1])])
        y = Stream(data, sr=1).convolve(win).call()
        assert eq(x, y)
Esempio n. 10
0
def test_filtfilt():
    sr = 1000
    freq = 100
    b, a = butter(3, freq / (sr / 2), 'high')
    for data in (data2, data3, data4):
        x = filtfilt(b, a, data, axis=0)
        y = Stream(data, chunksize=211, sr=sr).filtfilt(b, a).call()
        assert eq(x, y)
Esempio n. 11
0
def test_map():
    assert eq(data1, Stream(data1, sr=1).map(dummyf).call())
    assert eq(data1 + 1, Stream(data1, sr=1).map(lambda x: x + 1).call())
    for data in (data1, data2, data3, data4):
        assert eq(data, Stream(data, sr=1).map(dummyf).call())
Esempio n. 12
0
def test_reduce_columns_by_map():
    myf = lambda x: np.mean(x, 1).reshape(-1, 1)
    assert eq(myf(data1), Stream(data1, sr=1).map(myf).call())
Esempio n. 13
0
def test_decimate():
    for data in (data2, data3, data4):
        x = data[::3]
        y = Stream(data, sr=1).decimate(3).call()
        assert eq(x, y)
Esempio n. 14
0
def test_stream_stream_floordiv():
    stream = Stream(data1 + 100, sr=10, chunksize=3)
    stream2 = Stream(data1, sr=10, chunksize=3)
    assert eq((data1 + 100) // data1, (stream // stream2).call())
Esempio n. 15
0
def test_stream_stream_subtract():
    stream = Stream(data1, sr=10, chunksize=3)
    stream2 = Stream(data1, sr=10, chunksize=3)
    assert eq(data1 - data1, (stream - stream2).call())
Esempio n. 16
0
def test_stream_multiply():
    stream = Stream(data1, sr=10, chunksize=3)
    stream2 = stream * 4
    assert eq(data1 * 4, stream2.call())
Esempio n. 17
0
def test_rechunk2():
    assert eq(data3, Stream(data3, sr=1, chunksize=12).rechunk(1).call())
    assert eq(data3, Stream(data3, sr=1, chunksize=12).rechunk(1000000).call())
Esempio n. 18
0
def test_rechunk():
    assert eq(data1, Stream(data1, sr=1, chunksize=10).rechunk(11).call())
    assert eq(data1, Stream(data1, sr=1, chunksize=12).rechunk(11).call())
Esempio n. 19
0
def test_getitem3():
    columns = {i: {'units': None, 'name': str(i)} for i in range(5)}
    y = Stream(data1, sr=1, attrs={'columns': columns})[0, -1].call()
    assert eq(data1[:, [0, -1]], y)
Esempio n. 20
0
def test_stream():
    stream = Stream(data1, sr=10)
    assert eq(data1, stream.call())
    assert eq(data2, Stream(data2, sr=10).call())
    assert eq(data3, Stream(data3, sr=10).call())
Esempio n. 21
0
def test_getitem2():
    columns = {i: {'units': None, 'name': str(i)} for i in range(5)}
    y = Stream(data1, sr=1, attrs={'columns': columns})[-1].call()
    assert eq(data1[:, -1].reshape(-1, 1), y)
Esempio n. 22
0
def test_stream_add():
    stream = Stream(data1, sr=10, chunksize=3)
    stream2 = stream + 4
    assert eq(data1 + 4, stream2.call())
Esempio n. 23
0
def test_stream_subtract():
    stream = Stream(data1, sr=10, chunksize=3)
    stream2 = stream - 4
    assert eq(data1 - 4, stream2.call())
Esempio n. 24
0
def test_stream_chaining():
    stream = Stream(data1, sr=10, chunksize=3)
    stream2 = stream + 4
    stream3 = stream2 + 3
    assert eq(data1 + 7, stream3.call())
Esempio n. 25
0
def test_stream_floor_divide():
    stream = Stream(data1, sr=10, chunksize=3)
    stream2 = stream // 4
    assert eq(data1 // 4, stream2.call())
Esempio n. 26
0
def test_vector_map3():
    data = np.arange(2503107).reshape(-1, 1)
    y = Stream(data, sr=30000, chunksize=2e6).vector_map(dummyf).call()
    assert eq(data, y)
Esempio n. 27
0
def test_stream_stream_mult():
    stream = Stream(data1, sr=10, chunksize=3)
    stream2 = Stream(data1, sr=10, chunksize=3)
    assert eq(data1 * data1, (stream * stream2).call())
Esempio n. 28
0
def test_stream_chunksize():
    stream = Stream(data1, sr=10, chunksize=3)
    assert eq(data1, stream.call())
Esempio n. 29
0
def test_stream_stream_add():
    stream = Stream(data1, sr=10, chunksize=3)
    stream2 = Stream(data1, sr=10, chunksize=3)
    assert eq(data1 + data1, (stream + stream2).call())
Esempio n. 30
0
def test_vector_map2():
    for data in (data1, data2, data3, data4):
        y = Stream(data, sr=1, chunksize=7).vector_map(dummyf).call()
        assert eq(data, y)