Esempio n. 1
0
def test_delta_given():
    """
    Test posterior computation under the trivial delta distribution.
    """

    engine = ModelEngine(Delta(float))

    assert_equal(engine.given(42.0, [43.0]), 42.0)
Esempio n. 2
0
def test_delta_given():
    """
    Test posterior computation under the trivial delta distribution.
    """

    engine = ModelEngine(Delta(float))

    assert_equal(engine.given(42.0, [43.0]), 42.0)
Esempio n. 3
0
def test_finite_mixture_given_enveloped():
    """
    Test mixture posterior computation with enveloped arrays.
    """

    model  = FiniteMixture(Delta(float), 2)
    engine = ModelEngine(model)
    out    = engine.given([(0.25, 1.0), (0.75, 2.0)], [[2.0]] * 3)

    for i in xrange(3):
        assert_almost_equal(out["p"][i, 0], 0.0)
        assert_almost_equal(out["p"][i, 1], 1.0)
Esempio n. 4
0
def test_finite_mixture_given_binomials():
    """
    Test finite-mixture posterior-parameter computation with binomials.
    """

    model  = FiniteMixture(MixedBinomial(), 2)
    engine = ModelEngine(model)
    out    = engine.given([(0.25, 0.25), (0.75, 0.75)], [(1, 1), (2, 3)])

    assert_equal(out["c"].tolist(), [0.25, 0.75])
    assert_almost_equal(out["p"][0], 0.03571429)
    assert_almost_equal(out["p"][1], 0.9642857)
Esempio n. 5
0
def test_finite_mixture_given():
    """
    Test finite-mixture posterior-parameter computation.
    """

    model  = FiniteMixture(Delta(float), 2)
    engine = ModelEngine(model)
    out    = engine.given([(0.25, 1.0), (0.75, 2.0)], [2.0])

    assert_equal(out["c"].tolist(), [1.0, 2.0])
    assert_almost_equal(out["p"][0], 0.0)
    assert_almost_equal(out["p"][1], 1.0)