考虑一个 numpy 包含数据的数组:
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 .
nan
True
我想要一个 全体的 不涉及修改输入数组的解决方案 aa .
aa
这很简单 logic function
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]