numpy.ma.cov#

ma.cov(x, y=None, rowvar=True, bias=False, allow_masked=True, ddof=None)[源代码]#

估计协方差矩阵.

除了处理缺失数据的方式外,此函数与 numpy.cov 的功能相同.更多详情和示例,请参见 numpy.cov.

默认情况下,掩码值会被识别为这样的值.如果 xy 具有相同的形状,则会分配一个公共掩码:如果 x[i,j] 被掩码,那么 y[i,j] 也将被掩码.将 allow_masked 设置为 False 将在任一输入数组中缺少值时引发异常.

参数:
xarray_like

一个包含多个变量和观测值的1维或2维数组.`x` 的每一行代表一个变量,每一列代表所有这些变量的一个单独观测值.另请参见下面的 rowvar.

yarray_like, 可选

一组额外的变量和观察.`y` 与 x 具有相同的形状.

rowvarbool, 可选

如果 rowvar 为 True(默认),则每一行表示一个变量,列中包含观测值.否则,关系将转置:每一列表示一个变量,而行包含观测值.

biasbool, 可选

默认归一化(False)是按 (N-1) 进行的,其中 N 是给定的观测数(无偏估计).如果 bias 为 True,则归一化按 N 进行.在 numpy 版本 >= 1.5 中,此关键字可以被关键字 ddof 覆盖.

allow_maskedbool, 可选

如果为真,掩码值在成对传播:如果 x 中的某个值被掩码,则 y 中对应的值也会被掩码.如果为假,当某些值缺失时会引发 ValueError 异常.

ddof{None, int}, 可选

如果不是 None ,则通过 (N - ddof) 进行归一化,其中 N 是观察值的数量;这会覆盖由 bias 隐含的值.默认值是 None.

在 1.5 版本加入.

引发:
ValueError

如果某些值缺失且 allow_masked 为 False,则会引发此错误.

参见

numpy.cov

示例

>>> import numpy as np
>>> 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)