擅长:python、mysql、java
<p>它没有使用<code>np.heavenside</code>函数,所以我不确定它是否是您要找的,但它可以工作:</p>
<p><code>ret_arr = (99*np.logical_or((array<np.percentile(a,5)),(array>np.percentile(a,95))))+1</code></p>
<p>它使用底部和顶部5个百分位数之间的比较,然后使用一个事实,即您可以对boleean数组进行数学运算。你知道吗</p>
<p>在这种情况下:</p>
<pre><code>In[73]: ret_arr
Out[73]: array([ 1, 1, 1, 1, 1, 100, 100, 1, 1, 1])
</code></pre>
<p>编辑:使用或代替and</p>