当前位置:首页 >> 脚本专栏

python_mask_array的用法

掩码数组

数据很大形况下是凌乱的,并且含有空白的或者无法处理的字符,掩码式数组可以很好的忽略残缺的或者是无效的数据点。掩码式数组由一个正常数组与一个布尔式数组组成,若布尔数组中为Ture,则表示正常数组中对应下标的值无效,反之False表示对应正常数组的值有效。

numpy.ma模块中提供掩码数组的处理,这个模块中几乎完整复制了numpy中的所有函数,并提供掩码数组的功能;

>import numpy.ma as ma
>x = np.array([1,2,3,5,7,4,3,2,8,0])
>mask = x < 5
>mx = ma.array(x,mask=mask)
>mask
array([ True, True, True, False, False, True, True, True, False, True], dtype=bool)
>mx
masked_array(data = [-- -- -- 5 7 -- -- -- 8 --],
mask = [ True True True False False True True True False True],
fill_value = 999999)

掩码数组具有三个属性:data、mask、fill_value;

data表示原始数值数组,

mask表示获得掩码用的布尔数组,

fill_value表示的填充值替代无效值之>后的数组,该数组通过filled()方法查看;

掩码数组可以使用各种下标对象对其进行存取,在被掩码的部分值为masked,可以设置某个位置值为ma.masked使其失效;

以上这篇python_mask_array的用法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。