将数据和屏蔽值设为 0?

get the data and the masked values as 0?

我有一个屏蔽数组。 我可以通过 array.data 取回数据,但这不会通过掩码过滤数据。

怎么才能取到数据,但是在有mask的地方取零


这是我目前得到的:

 ary.data * (~ary.mask).astype(byte)

使用numpy.ma.filled():

import numpy as np
m = np.ma.masked_greater(np.random.rand(10), 0.5)
print np.ma.filled(m, 0)