numpy.ma.MaskedArray.put#

方法

ma.MaskedArray.put(indices, values, mode='raise')[source]#

将存储索引位置设置为相应的值。

对于 indices 中的每个 n,将 self._data.flat[n] 设置为 values[n]。如果 values 的长度小于 indices,则它将重复。如果 values 包含一些掩码值,则初始掩码会相应更新,否则相应的掩码值将被取消掩码。

参数::
indices一维数组类

目标索引,解释为整数。

values数组类

要放置在 self._data 复制副本中目标索引处的值。

mode{‘raise’, ‘wrap’, ‘clip’}, 可选

指定越界索引的行为方式。‘raise’ : 抛出错误。‘wrap’ : 环绕。‘clip’ : 裁剪到范围。

注释

values 可以是标量或长度为 1 的数组。

示例

>>> import numpy as np
>>> x = np.ma.array([[1,2,3],[4,5,6],[7,8,9]], mask=[0] + [1,0]*4)
>>> x
masked_array(
  data=[[1, --, 3],
        [--, 5, --],
        [7, --, 9]],
  mask=[[False,  True, False],
        [ True, False,  True],
        [False,  True, False]],
  fill_value=999999)
>>> x.put([0,4,8],[10,20,30])
>>> x
masked_array(
  data=[[10, --, 3],
        [--, 20, --],
        [7, --, 30]],
  mask=[[False,  True, False],
        [ True, False,  True],
        [False,  True, False]],
  fill_value=999999)
>>> x.put(4,999)
>>> x
masked_array(
  data=[[10, --, 3],
        [--, 999, --],
        [7, --, 30]],
  mask=[[False,  True, False],
        [ True, False,  True],
        [False,  True, False]],
  fill_value=999999)