擅长:python、mysql、java
<p>不幸的是,<code>mode()</code>方法只存在于<em>熊猫</em>中,而不存在于<em>Numpy</em>中,
因此,第一步是展平阵列(<em>arr</em>)并将其转换为
泛美的<em>系列</em>:</p>
<pre><code>s = pd.Series(arr.flatten())
</code></pre>
<p>然后,如果您想找到最常见的字符串(请注意<em>Numpy</em>
阵列具有相同类型的所有元素),这是最直观的解决方案
是执行:</p>
<pre><code>s.mode()[0]
</code></pre>
<p>(<em>s.mode()
)</p>
<p>结果是:</p>
<pre><code>'0.002232327408019874'
</code></pre>
<p>但是如果你想省去可以转换成数字的字符串,
你需要一种不同的方法</p>
<p>不幸的是,您不能使用<em>s.str.isnumeric()</em>,因为它可以找到
仅由数字组成的字符串,但“数字”字符串包含
还有点</p>
<p>因此,您必须使用<em>str.match</em>和缩小系列(<em>s</em>)
然后调用<em>模式</em>:</p>
<pre><code>s[~s.str.match('^[+-]?(?:\d|\d+\.\d*|\d*\.\d+)$')].mode()[0]
</code></pre>
<p>这一次的结果是:</p>
<pre><code>'herfst'
</code></pre>