numpy.ma.dot#

ma.dot(a, b, strict=False, out=None)[source]#

返回两个数组的点积。

此函数等效于 numpy.dot,它考虑了掩码值。请注意,strictout 的位置与方法版本不同。为了保持与相应方法的兼容性,建议将可选参数视为仅限关键字参数。在某些时候,这可能是强制性的。

参数:
a, bmasked_array_like

输入数组。

strictbool, 可选

是否传播掩码数据 (True) 或将其设置为 0 (False) 以进行计算。默认为 False。传播掩码意味着如果掩码值出现在行或列中,则整个行或列都被视为掩码。

outmasked_array, 可选

输出参数。这必须具有与不使用它时返回的完全相同的类型。特别是,它必须具有正确的类型,必须是 C 连续的,并且其 dtype 必须是 dot(a,b) 返回的 dtype。这是一项性能特性。因此,如果不满足这些条件,则会引发异常,而不是尝试灵活处理。

另请参见

numpy.dot

ndarray 的等效函数。

示例

>>> import numpy as np
>>> a = np.ma.array([[1, 2, 3], [4, 5, 6]], mask=[[1, 0, 0], [0, 0, 0]])
>>> b = np.ma.array([[1, 2], [3, 4], [5, 6]], mask=[[1, 0], [0, 0], [0, 0]])
>>> np.ma.dot(a, b)
masked_array(
  data=[[21, 26],
        [45, 64]],
  mask=[[False, False],
        [False, False]],
  fill_value=999999)
>>> np.ma.dot(a, b, strict=True)
masked_array(
  data=[[--, --],
        [--, 64]],
  mask=[[ True,  True],
        [ True, False]],
  fill_value=999999)