Пример #1
0
def test_zipped():
    pmf = [0.125, 0.125, 0.125, 0.125, 0.25, 0, 0.25]
    outcomes = ['000', '011', '101', '110', '222', '321', '333']
    d = Distribution(outcomes, pmf)

    outcomes_, pmf_ = list(zip(*d.zipped()))
    d2 = Distribution(outcomes_, pmf_)
    assert d.is_approx_equal(d2)

    outcomes_, pmf_ = list(zip(*d.zipped(mode='atoms')))
    d3 = Distribution(outcomes_, pmf_)
    assert d.is_approx_equal(d3)

    outcomes_, pmf_ = list(zip(*d.zipped(mode='patoms')))
    d4 = Distribution(outcomes_, pmf_)
    d.make_sparse()
    assert np.allclose(d.pmf, d4.pmf)
Пример #2
0
def test_zipped():
    pmf = [.125, .125, .125, .125, .25, 0, .25]
    outcomes = ['000', '011', '101', '110', '222', '321', '333']
    d = Distribution(outcomes, pmf)

    outcomes_, pmf_ = list(zip(*d.zipped()))
    d2 = Distribution(outcomes_, pmf_)
    assert_true(d.is_approx_equal(d2))

    outcomes_, pmf_ = list(zip(*d.zipped(mode='atoms')))
    d3 = Distribution(outcomes_, pmf_)
    assert_true(d.is_approx_equal(d3))

    outcomes_, pmf_ = list(zip(*d.zipped(mode='patoms')))
    d4 = Distribution(outcomes_, pmf_)
    d.make_sparse()
    np.testing.assert_allclose(d.pmf, d4.pmf)
Пример #3
0
def test_init10():
    d1 = Distribution([(0, 0), (0, 1), (1, 0)], [0.5, 0.25, 0.25])
    pmf = [[0.5, 0.25], [0.25, 0]]
    d2 = Distribution.from_ndarray(pmf)
    assert d1.is_approx_equal(d2)
Пример #4
0
def test_init7():
    outcomes = ['0', '1']
    pmf = [1 / 2] * 2
    d1 = Distribution(outcomes, pmf)
    d2 = Distribution.from_distribution(d1)
    assert d1.is_approx_equal(d2)
Пример #5
0
def test_init7():
    outcomes = ['0', '1']
    pmf = [1/2, 1/2]
    d1 = Distribution(outcomes, pmf)
    d2 = Distribution.from_distribution(d1)
    assert_true(d1.is_approx_equal(d2))
Пример #6
0
def test_init10():
    d1 = Distribution([(0, 0), (0, 1), (1, 0)], [0.5, 0.25, 0.25])
    pmf = [[0.5, 0.25], [0.25, 0]]
    d2 = Distribution.from_ndarray(pmf)
    assert d1.is_approx_equal(d2)