次のようなカウンターがあります。
_Counter: {('A': 10), ('C':5), ('H':4)}
_
キーをcounter.most_common()
ではなくアルファベット順に並べ替えたい
これを達成する方法はありますか?
sorted を使用するだけです:
>>> from collections import Counter
>>> counter = Counter({'A': 10, 'C': 5, 'H': 7})
>>> counter.most_common()
[('A', 10), ('H', 7), ('C', 5)]
>>> sorted(counter.items())
[('A', 10), ('C', 5), ('H', 7)]
>>> from operator import itemgetter
>>> from collections import Counter
>>> c = Counter({'A': 10, 'C':5, 'H':4})
>>> sorted(c.items(), key=itemgetter(0))
[('A', 10), ('C', 5), ('H', 4)]
Python 3では、コレクションの most_common 関数を使用できます。カウンター:
x = ['a', 'b', 'c', 'c', 'c', 'd', 'd']
counts = collections.Counter(x)
counts.most_common(len(counts))
これは、collections.Counterで利用可能なmost_common関数を使用します。これにより、n
の最も一般的なキーのキーとカウントを見つけることができます。
値を並べ替えられたリストとして取得するには
array = [1, 2, 3, 4, 5]
counter = collections.Counter(array)
sorted_occurrences = list(dict(sorted(counter.items())).values())
sorted(counter.items(),key = lambda i: i[0])
例えば:
arr = [2,3,1,3,2,4,6,7,9,2,19]
c = collections.Counter(arr)
sorted(c.items(),key = lambda i: i[0])
外側:[(1、1)、(2、3)、(3、2)、(4、1)、(6、1)、(7、1)、(9、1)、(19、1) ]辞書形式を取得したい場合は、
dict(sorted(c.items(),key = lambda i: i[0]))