numpy.ma.masked_array.view#

方法

ma.masked_array.view(dtype=None, type=None, fill_value=None)[源代码]#

返回 MaskedArray 数据的视图。

参数:
dtype数据类型或 ndarray 子类,可选

返回视图的数据类型描述符,例如 float32 或 int16。默认值 None 会使视图具有与 a 相同的数据类型。与 ndarray.view 一样,dtype 也可以指定为 ndarray 子类,这会指定返回对象的类型(这相当于设置 type 参数)。

typePython 类型,可选

返回视图的类型,可以是 ndarray 或其子类。默认值 None 会保留原类型。

fill_value标量,可选

用于无效条目的值(默认为 None)。如果为 None,则此参数会从传入的 dtype 推断,或者在没有指定的情况下从原始数组推断,如下文备注中所述。

另请参阅

numpy.ndarray.view

ndarray 对象上的等效方法。

备注

a.view() 有两种不同的使用方式

a.view(some_dtype)a.view(dtype=some_dtype) 构建数组内存的视图,其数据类型不同。这可能导致内存字节的重新解释。

a.view(ndarray_subclass)a.view(type=ndarray_subclass) 只是返回 ndarray_subclass 的一个实例,该实例查看相同的数组(相同的形状、数据类型等)。这不会导致内存的重新解释。

如果未指定 fill_value,但指定了 dtype(且不是 ndarray 子类),则 MaskedArray 的 fill_value 将被重置。如果 fill_valuedtype 都未指定(或者如果 dtype 是 ndarray 子类),则保留填充值。最后,如果指定了 fill_value 但未指定 dtype,则填充值将设置为指定的值。

对于 a.view(some_dtype),如果 some_dtype 的每个条目字节数与之前的 dtype 不同(例如,将常规数组转换为结构化数组),那么视图的行为不能仅仅从 a 的表面外观(通过 print(a) 显示)来预测。它还取决于 a 在内存中存储的具体方式。因此,如果 a 是 C 顺序的,或者 Fortran 顺序的,或者定义为切片或转置等,视图可能会给出不同的结果。