This page

scikits.learn.covariance.oas

scikits.learn.covariance.oas(X, assume_centered=False)

Estimate covariance with the Oracle Approximating Shrinkage algorithm.

Parameters :

X: array-like, shape (n_samples, n_features) :

Data from which to compute the covariance estimate

assume_centered: boolean :

If True, data are not centered before computation. Usefull to work with data whose mean is significantly equal to zero but is not exactly zero. If False, data are centered before computation.

Returns :

shrunk_cov: array-like, shape (n_features, n_features) :

Shrunk covariance

shrinkage: float :

coefficient in the convex combination used for the computation of the shrunk estimate.

Notes

The regularised (shrunk) covariance is:

(1 - shrinkage)*cov
  • shrinkage * mu * np.identity(n_features)

where mu = trace(cov) / n_features