pydiodon.bicentering¶
- pydiodon.bicentering(A)[source]¶
Bicentering a matrix
- Parameters
- Aa n x p numpy array
the matrix to be bicentered
- Returns
- ma float
global mean of the matrix
- ra 1D numpy array (n values)
rowise means
- ca 1D numpy arrau (p values)
columnwise means
- Ra 2D numpy array (n x p)
bicentered matrix
Notes
If A is a matrix, builds a matrix R of same dimension centered on rows and columns.
\(m = (1/np) \sum_{i,j} a_{ij}\)
\(r = (r_1,...,r_n)\) with \(r_i = (1/p)\sum_j a_{ij} - m\)
\(c = (c_1,...,c_p)\) with \(c_j = (1/n)\sum_i a_{ij} - m\)
such that
\(\sum_ir_i = \sum_jc_j=0\)
and
for any row i, \(\sum_j R_{ij}=0\) and for any column j, \(\sum_i R_{ij}=0\)
The matrix R can describe interactions in a additive model with two categorical variables, as in
\(a_{ij} = m + r_i + c_j + R_{ij}\)
example
>>> import pydiodon as dio >>> import numpy as np >>> n = 4 ; p = 3 >>> A = np.arange(n*p) >>> A.shape=(n,p) >>> m, r, c, R = dio.bicenter(A)
af, revised 21.02.19, 22.09.21, 22.10.13