<p>我有一个二维阵列从光栅图像。光栅图像没有分配给-3.4028231e+38的数据值,我试图将此值替换为“nan”,但在对其应用条件运算符时找不到该值。在</p>
<p>我的数据如下:</p>
<pre><code>>>> slice22 = inndvi[0:2,0:2]
>>> slice22
array([[ -3.40282306e+38, -3.40282306e+38],
[ -3.40282306e+38, -3.40282306e+38]], dtype=float32)
</code></pre>
<p>当我试图在if语句中检查这些值时:</p>
^{pr2}$
<p>输出为“否”</p>
<p>因此,我无法将3.40282306e+38分配给努比·楠具体如下:</p>
<pre><code>slice22[slice22 == 3.40282306e+38] = numpy.nan
</code></pre>
<p>还有一件事我想说的是,我的数据集在光栅中的范围是从+2到-2。
我试着用这个范围来消除3.40282306e+38的值,但还是有错误。在</p>
<pre><code>>>> slice22 [slice22 < 2 and slice22 >2 ]= np.nan
Runtime error
Traceback (most recent call last):
File "<string>", line 1, in <module>
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
</code></pre>