gpt4 book ai didi

python - 使用对象 dtype 的 ndarray 与 None 进行元素比较

转载 作者:太空宇宙 更新时间:2023-11-04 06:54:29 24 4
gpt4 key购买 nike

x = np.empty([2], dtype=object)
> array([None, None], dtype=object)

x[0] = 'a'
> array(['a', None], dtype=object)

我试图从这个类型为 ndarray 的对象中获取一个 bool 数组 [False, True],其中对象类型为 None

不起作用的东西:x is None, x.isfinite(), x == None, np .isnan(x)。该数组可能有 n 维度,使得 for 循环迭代看起来不愉快。

最佳答案

在 NumPy 1.12 及更早版本中,您需要显式调用 numpy.equal 以获得广播相等性比较。发表评论,以便 future 的读者了解您这样做的原因:

# Comparisons to None with == don't broadcast (yet, as of NumPy 1.12).
# We need to use numpy.equal explicitly.
numpy.equal(x, None)

在 NumPy 1.13 及更高版本中,x == None will give you a broadcasted equality comparison , 但如果你想向后兼容早期版本,你仍然可以使用 numpy.equal(x, None)

关于python - 使用对象 dtype 的 ndarray 与 None 进行元素比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44295919/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com