numpy.ma.cov#
- ma.cov(x, y=None, rowvar=True, bias=False, allow_masked=True, ddof=None)[source]#
Estimate the covariance matrix.
Except for the handling of missing data this function does the same as
numpy.cov
. For more details and examples, seenumpy.cov
.By default, masked values are recognized as such. If x and y have the same shape, a common mask is allocated: if
x[i,j]
is masked, theny[i,j]
will also be masked. Setting allow_masked to False will raise an exception if values are missing in either of the input arrays.- Parameters:
- xarray_like
A 1-D or 2-D array containing multiple variables and observations. Each row of x represents a variable, and each column a single observation of all those variables. Also see rowvar below.
- yarray_like, optional
An additional set of variables and observations. y has the same shape as x.
- rowvarbool, optional
If rowvar is True (default), then each row represents a variable, with observations in the columns. Otherwise, the relationship is transposed: each column represents a variable, while the rows contain observations.
- biasbool, optional
Default normalization (False) is by
(N-1)
, whereN
is the number of observations given (unbiased estimate). If bias is True, then normalization is byN
. This keyword can be overridden by the keywordddof
in numpy versions >= 1.5.- allow_maskedbool, optional
If True, masked values are propagated pair-wise: if a value is masked in x, the corresponding value is masked in y. If False, raises a ValueError exception when some values are missing.
- ddof{None, int}, optional
If not
None
normalization is by(N - ddof)
, whereN
is the number of observations; this overrides the value implied bybias
. The default value isNone
.New in version 1.5.
- Raises:
- ValueError
Raised if some values are missing and allow_masked is False.
See also
Examples
>>> x = np.ma.array([[0, 1], [1, 1]], mask=[0, 1, 0, 1]) >>> y = np.ma.array([[1, 0], [0, 1]], mask=[0, 0, 1, 1]) >>> np.ma.cov(x, y) masked_array( data=[[--, --, --, --], [--, --, --, --], [--, --, --, --], [--, --, --, --]], mask=[[ True, True, True, True], [ True, True, True, True], [ True, True, True, True], [ True, True, True, True]], fill_value=1e+20, dtype=float64)