numpy.ma.MaskedArray.toflex#

方法

ma.MaskedArray.toflex()[source]#

将掩码数组转换为灵活类型数组。

返回的灵活类型数组将有两个字段

  • the _data 字段存储数组的 _data 部分。

  • the _mask 字段存储数组的 _mask 部分。

参数:
返回值:
recordndarray

一个新的具有两个字段的灵活类型 ndarray:第一个元素包含一个值,第二个元素包含相应的掩码布尔值。返回的记录形状与 self.shape 匹配。

备注

将掩码数组转换为灵活的 ndarray 的副作用是元信息(fill_value 等)将丢失。

示例

>>> 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.toflex()
array([[(1, False), (2,  True), (3, False)],
       [(4,  True), (5, False), (6,  True)],
       [(7, False), (8,  True), (9, False)]],
      dtype=[('_data', '<i8'), ('_mask', '?')])