numpy.ma.MaskedArray.filled#
方法
- ma.MaskedArray.filled(fill_value=None)[源代码]#
返回一个副本,其中被掩码的值用给定的值填充。但是,如果没有要填充的被掩码值,则将返回一个 ndarray 形式的 self。
- 参数:
- fill_value类数组对象,可选
用于无效条目的值。可以是标量或非标量。如果是非标量,则生成的 ndarray 必须可以广播到输入数组。默认为 None,在这种情况下,将使用数组的
fill_value属性。
- 返回:
- filled_arrayndarray
self的一个副本,其中无效条目被 fill_value(无论是函数参数还是self的属性)替换,或者如果不存在要替换的无效条目,则为self本身(作为 ndarray)。
备注
结果**不是** MaskedArray!
示例
>>> import numpy as np >>> x = np.ma.array([1,2,3,4,5], mask=[0,0,1,0,1], fill_value=-999) >>> x.filled() array([ 1, 2, -999, 4, -999]) >>> x.filled(fill_value=1000) array([ 1, 2, 1000, 4, 1000]) >>> type(x.filled()) <class 'numpy.ndarray'>
子类继承被保留。这意味着,例如,如果掩码数组的数据部分是 recarray,则
filled将返回一个 recarray。>>> x = np.array([(-1, 2), (-3, 4)], dtype='i8,i8').view(np.recarray) >>> m = np.ma.array(x, mask=[(True, False), (False, True)]) >>> m.filled() rec.array([(999999, 2), ( -3, 999999)], dtype=[('f0', '<i8'), ('f1', '<i8')])