py4sci

Previous topic

formula.rutils

This Page

formula.random_effects

Formulae for random effects models

class formula.random_effects.RandomEffects(seq, sigma=None, char='e')

Covariance matrices for common random effects analyses.

Examples

>>> from formula import Factor, make_recarray

Make a subject factor with two levels

>>> subj_factor = Factor('s', [2,3])

Make corresponding data vector

>>> subj = make_recarray([2,2,2,3,3], 's')

Make random effects object with default covariance

>>> c = RandomEffects(subj_factor.terms)
>>> c.cov(subj)
array([[1.0*_s2_0, 1.0*_s2_0, 1.0*_s2_0, 0, 0],
       [1.0*_s2_0, 1.0*_s2_0, 1.0*_s2_0, 0, 0],
       [1.0*_s2_0, 1.0*_s2_0, 1.0*_s2_0, 0, 0],
       [0, 0, 0, 1.0*_s2_1, 1.0*_s2_1],
       [0, 0, 0, 1.0*_s2_1, 1.0*_s2_1]], dtype=object)

Specify the covariance

>>> c = RandomEffects(subj_factor.terms,
...                   sigma=np.array([[4,1],[1,6]]))
>>> c.cov(subj)
array([[ 4.,  4.,  4.,  1.,  1.],
       [ 4.,  4.,  4.,  1.,  1.],
       [ 4.,  4.,  4.,  1.,  1.],
       [ 1.,  1.,  1.,  6.,  6.],
       [ 1.,  1.,  1.,  6.,  6.]])

Methods

cov
delete_terms
design
subs
cov(term, param=None)

Compute the covariance matrix for some given data.