scipy.linalg.helmert

scipy.linalg.helmert(n, full=False)[source]

Create an Helmert matrix of order n.

This has applications in statistics, compositional or simplicial analysis, and in Aitchison geometry.

Parameters
nint

The size of the array to create.

fullbool, optional

If True the (n, n) ndarray will be returned. Otherwise the submatrix that does not include the first row will be returned. Default: False.

Returns
Mndarray

The Helmert matrix. The shape is (n, n) or (n-1, n) depending on the full argument.

Examples

>>> from scipy.linalg import helmert
>>> helmert(5, full=True)
array([[ 0.4472136 ,  0.4472136 ,  0.4472136 ,  0.4472136 ,  0.4472136 ],
       [ 0.70710678, -0.70710678,  0.        ,  0.        ,  0.        ],
       [ 0.40824829,  0.40824829, -0.81649658,  0.        ,  0.        ],
       [ 0.28867513,  0.28867513,  0.28867513, -0.8660254 ,  0.        ],
       [ 0.2236068 ,  0.2236068 ,  0.2236068 ,  0.2236068 , -0.89442719]])