我想在np.all()
的帮助下将信号与参考信号进行比较。引用可以包含np.nan
。在该NaN位置,信号是否满足比较条件并不重要。以下是示例代码。但是这段代码不起作用。
我可以比较for
- 循环中的每个元素,但是有一种聪明的方法可以进行这种比较吗?
import numpy as np
reference = np.array([np.nan, 1])
signal = np.array([2, 2])
print np.all(reference < signal)
答案 0 :(得分:2)
使用适当的切片将比较限制为非纳米值。您也可以使用np.finite
代替~np.isnan
import numpy as np
reference = np.array([np.nan, 1])
signal = np.array([2, 2])
idx = ~np.isnan(reference)
print np.all(reference[idx] < signal[idx])