Python - 屏蔽网格的特定值

时间:2014-08-27 13:24:58

标签: numpy grid mask

我想屏蔽网格的值。 作为示例,我想掩盖" t<的所有值。 0"之后做计算。 我尝试使用条件,但它不起作用......

import numpy as np

Lx=10.
Ly=10.

x0 = 2

YA, XA = np.mgrid[0:Ly, 0:Lx]

t = XA - 2

1 个答案:

答案 0 :(得分:1)

你需要在掩盖数组后解释你想要做什么。你想改变未掩盖的值吗?然后

mask = t < 0
YA[~mask] = ...

可能就是您所需要的一切。

另一方面,如果您需要计算具有屏蔽值的数组的统计信息,您可能会发现使用NumPy masked arrays更方便:

YA = np.ma.masked_array(YA, mask)