考虑一个带有数据的numpy
数组:
aa = np.array([-4.793, -1.299, 0.453, np.nan, np.nan, 1.131, 0.684, 1.037])
我需要创建一个这样的面具:
mask = -4. < aa
评估为
array([False, True, True, False, False, True, True, True], dtype=bool)
这里有一个问题:我需要将nan
值评估为True
。
我在通用解决方案之后,不涉及修改我的输入数组aa
。
答案 0 :(得分:4)
import numpy as np
aa = np.array([-4.793, -1.299, 0.453, np.nan, np.nan, 1.131, 0.684, 1.037])
mask = np.logical_or(-4 < aa, np.isnan(aa))
print mask
# [False True True True True True True True]