我在代码的np.select部分遇到了一个问题,并复制了一个可重现的最小示例,以寻求一些关于为什么返回ValueError: -1 is not in range而不是nan的建议 import numpyvalues.argmin()-1], 'ignore'] # get first value in df['number'] column less than 'number' variable
answer = n
我不能把try和except TypeError放在对np.isnan的调用之外,假设任何生成TypeError的数组都不包含NaNs:毕竟,我希望np.isnan(np.array([1, np.NaN, "A"]))返回np.array([False, True, False])。我的当前解决方案是创建一个np.float64类型的新数组,循环遍历原始数组的元素,trying将该元素放入新数组中(如果失败,则将其保留为零),然后对新数组调用np.isnan。注意,[x is np.nan for x