我的 numpy 数组使用 np.nan
来指定缺失的值。在迭代数据集时,我需要检测这些缺失的值,并以特殊的方式处理它们。
我很天真地使用了 numpy.isnan(val)
,它工作得很好,除非 val
不在 numpy.isnan()
支持的类型子集中。例如,字符串字段中可能出现缺失数据,在这种情况下,我得到:
>>> np.isnan('some_string')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: Not implemented for this type
除了编写一个昂贵的包装器来捕获异常并返回 False
之外,还有什么方法可以优雅而有效地处理这个问题吗?