def test_factor3(self): f = ['a', 'b', 'c'] * 10 fac = formula.Factor('ff', f) fac.namespace = {'ff': f} m = fac.main_effect(reference=1) m.namespace = fac.namespace self.assertEquals(m().shape, (2, 30))
def test_ordinal_factor2(self): f = ['b', 'c', 'a'] * 3 fac = formula.Factor('ff', ['a', 'b', 'c'], ordinal=True) fac.namespace = {'ff': f} assert_equal(fac(), [1, 2, 0] * 3) assert_equal(fac['a'], [0, 0, 1] * 3) assert_equal(fac['b'], [1, 0, 0] * 3) assert_equal(fac['c'], [0, 1, 0] * 3)
def test_factor5(self): f = ['a', 'b', 'c'] * 3 fac = formula.Factor('ff', f) fac.namespace = {'ff': f} assert_equal(fac(), [[1, 0, 0] * 3, [0, 1, 0] * 3, [0, 0, 1] * 3]) assert_equal(fac['a'], [1, 0, 0] * 3) assert_equal(fac['b'], [0, 1, 0] * 3) assert_equal(fac['c'], [0, 0, 1] * 3)
def test_factor4(self): f = ['a', 'b', 'c'] * 10 fac = formula.Factor('ff', f) fac.namespace = {'ff': f} m = fac.main_effect(reference=2) m.namespace = fac.namespace r = np.array([np.identity(3)] * 10) r.shape = (30, 3) r = r.T _m = np.array([r[0] - r[2], r[1] - r[2]]) assert_almost_equal(_m, m())
def test_factor2(self): f = ['a', 'b', 'c'] * 10 fac = formula.Factor('ff', f) fac.namespace = {'ff': f} self.assertEquals(fac().shape, (3, 30))
def test_factor1(self): f = ['a', 'b', 'c'] * 10 fac = formula.Factor('ff', f) fac.namespace = {'ff': f} self.assertEquals(list(fac.values()), f)