numpy.ma.where #

嘛。其中(条件, x=<无 值> , y=<无 值> ) [来源] #

根据条件返回包含xy元素的掩码数组。

笔记

当仅提供 条件nonzero时,此功能与 相同。本文档的其余部分仅涵盖提供所有三个参数的情况。

参数
条件类似数组,布尔

如果为 True,则产生x,否则产生y

x, y类似数组,可选

从中进行选择的值。xy条件需要可广播为某种形状。

返回
输出屏蔽数组

一个屏蔽数组,其中包含masked条件被屏蔽的元素、来自条件为True 的x的元素以及来自其他位置的y的元素 。

也可以看看

numpy.where

顶级 NumPy 模块中的等效函数。

nonzero

当省略 x 和 y 时调用的函数

例子

>>> x = np.ma.array(np.arange(9.).reshape(3, 3), mask=[[0, 1, 0],
...                                                    [1, 0, 1],
...                                                    [0, 1, 0]])
>>> x
masked_array(
  data=[[0.0, --, 2.0],
        [--, 4.0, --],
        [6.0, --, 8.0]],
  mask=[[False,  True, False],
        [ True, False,  True],
        [False,  True, False]],
  fill_value=1e+20)
>>> np.ma.where(x > 5, x, -3.1416)
masked_array(
  data=[[-3.1416, --, -3.1416],
        [--, -3.1416, --],
        [6.0, --, 8.0]],
  mask=[[False,  True, False],
        [ True, False,  True],
        [False,  True, False]],
  fill_value=1e+20)