Esempio n. 1
0
def test_derived_term_search(diabetes_data):
    model = Model(diabetes_data)
    model.add(random='age_grp|BP', categorical=['age_grp'])
    terms = model._match_derived_terms('age_grp|BP')
    names = set([t.name for t in terms])
    assert names == {'1|BP', 'age_grp[T.1]|BP', 'age_grp[T.2]|BP'}

    term = model._match_derived_terms('1|BP')[0]
    assert term.name == '1|BP'

    # All of these should find nothing
    assert model._match_derived_terms('1|ZZZ') is None
    assert model._match_derived_terms('ZZZ|BP') is None
    assert model._match_derived_terms('BP') is None
    assert model._match_derived_terms('BP') is None
Esempio n. 2
0
def test_derived_term_search(diabetes_data):
    model = Model(diabetes_data)
    model.add("BMI ~ 1", random="age_grp|BP", categorical=["age_grp"])
    model.build(backend="pymc")
    terms = model._match_derived_terms("age_grp|BP")
    names = set([t.name for t in terms])
    assert names == {"1|BP", "age_grp[T.1]|BP", "age_grp[T.2]|BP"}

    term = model._match_derived_terms("1|BP")[0]
    assert term.name == "1|BP"

    # All of these should find nothing
    assert model._match_derived_terms("1|ZZZ") is None
    assert model._match_derived_terms("ZZZ|BP") is None
    assert model._match_derived_terms("BP") is None
    assert model._match_derived_terms("BP") is None
def test_derived_term_search(diabetes_data):
    model = Model(diabetes_data)
    model.fit("BMI ~ 1 + (age_grp|BP)", categorical=["age_grp"], run=False)
    terms = model._match_derived_terms("age_grp|BP")
    names = set([t.name for t in terms])

    # Since intercept is present, it uses treatment encoding
    lvls = sorted(list(diabetes_data["age_grp"].unique()))[1:]
    assert names == set(["1|BP"] + [f"age_grp[{lvl}]|BP" for lvl in lvls])

    term = model._match_derived_terms("1|BP")[0]
    assert term.name == "1|BP"

    # All of these should find nothing
    assert model._match_derived_terms("1|ZZZ") is None
    assert model._match_derived_terms("ZZZ|BP") is None
    assert model._match_derived_terms("BP") is None
    assert model._match_derived_terms("BP") is None