擅长:python、mysql、java
<p>举个例子:</p>
<pre><code>import numpy as np
data = np.random.random((4,3))
mask = np.random.random_integers(0,1,(4,3))
data[mask==0] = np.NaN
</code></pre>
<p>当<code>mask</code>为0时,数据将被设置为<code>nan</code>。当然,您可以使用任何类型的条件,或者对b中的不同值执行不同的操作</p>
<p>要清除除特定存储箱之外的所有内容,请尝试以下操作:</p>
<pre><code>c[b!=1] = np.NaN
</code></pre>
<p>所以,要复制特定容器中的所有内容:</p>
<pre><code>a = np.copy(c)
a[b!=1] == np.NaN
</code></pre>
<p>要获得垃圾箱中所有东西的平均值:</p>
<pre><code>np.mean(c[b==1])
</code></pre>
<p>因此,这也许可以满足您的需要(其中bins是bin值的列表):</p>
<pre><code>a = np.empty(c.shape)
a[b==0] = np.NaN
for bin in bins:
a[b==bin] = np.mean(c[b==bin])
</code></pre>