Counter 자료형의 값에 container의 값을 갱신시킨다.
>> c = Counter()
>> c.update("abcd")
Counter({'a' : 1, 'b' : 1, 'c': 1, 'd' : 1})
>> c.update({'d' : 3, 'e' : 4})
Counter({'a' : 1, 'b' : 1, 'c': 1, 'd' : 4, 'e' : 4})
중복 key의 value 값이 인자의 value로 갱신되는 dictionary의 update와 다르게 더해지는 것을 확인할 수 있다.
Counter의 요소를 풀어서 반환한다.
>> list(c.elements())
['a', 'b', 'c', 'd', 'd', 'd', 'd', 'e', 'e', 'e', 'e']
list로 형변환 하여 사용한다.
빈도수가 높은 순으로 상위 n 개를 tuple의 list 형태로 반환한다.
n 이 없으면 전체를 반환한다.
>> c.most_common(2)
[('e', 4), ('d', 4)]
dictionary의 items를 list형으로 변환한 것과 같은꼴.
인자로 들어오는 counter 만큼 요소 뺄셈을 진행한다.
앞의 counter에 해당 key가 존재하지 않는 경우 value값이 음수가 된다.
Counter 간에 덧셈과 뺄셈이 가능하다.
>> a = collections.Counter(['a' 'a', 'b', 'b', 'c', 'd'])
>> b = collections.Counter(aabef)
>> a + b
Counter(['a' : 4, 'b' : 3, 'c' : 1, 'd' : 1, 'e' : 1, 'f': 1])
>> a - b
Counter(['b' : 1,'d' : 1])
subtract와 다르게 뺄셈은 음수값은 제외시킨다.