擅长:python、mysql、java
<p>您可以从<code>itertools</code>使用<code>count</code>。在</p>
<pre><code>>>> l=[random.randrange(0,10) for i in range(100)]
>>> l
[7, 1, 8, 6, ..., 8, 4]
>>> from itertools import count
>>> dict([(i,l.count(i)) for i in l])
{0: 5, 1: 12, 2: 6, 3: 9, 4: 13, 5: 11, 6: 11, 7: 9, 8: 12, 9: 12}
</code></pre>
<p>例如,仅选择值<;10%:</p>
^{pr2}$
<p>编辑:
而且,正如Pablo Moretti建议的那样,<code>collections.counter</code>:</p>
<pre><code>>>> from collections import Counter
>>> c=Counter(l)
>>> [i for i in c if c[i]<(0.1*len(l))]
[0, 2, 3, 7]
</code></pre>
<p>或者</p>
<pre><code>>>> [(i, c[i]) for i in c if c[i]<(0.1*len(l))]
[(0, 5), (2, 6), (3, 9), (7, 9)]
</code></pre>
<p>有4个最不常见的元素:</p>
<pre><code>>>> c.most_common()[:len(c)-5:-1]
[(0, 5), (2, 6), (7, 9), (3, 9)]
</code></pre>