반응형
[Counter 모듈]
Counter 모듈은 시퀀스 자료형의 데이터 값의 개수를 딕셔너리 형태로 반환하는 자료구조입니다. 만약 a, a, a, b, b, c가 입력된 시퀀스 자료형이 있을 때 Counter 모듈은 a가 3개, b가 2개, c가 1개인 것을 카운트하여 반환합니다.
from collections import Counter
text = list('banana')
print(text)
c= Counter((text))
print(c)
print(c['a'])
'''
['b', 'a', 'n', 'a', 'n', 'a']
Counter({'a': 3, 'b': 1, 'n': 1})
3
'''
Counter()에 직접 값의 종류와 각 값의 개수를 입력할 수 있습니다.
from collections import Counter
c = Counter(a=1, b=2, c=3)
print(c)
print(sorted(c.elements())
'''
Counter({'c': 3, 'b': 2, 'a': 1})
['a', 'b', 'b', 'c', 'c', 'c']
'''
- Counter()에서 사용 가능한 함수
- elements(): 각 요소의 개수만큼 리스트형의 결과를 출력
- update(): Counter의 값 갱신. 이때 값을 치환하는 것이 아니라 더하는 것임
- most_common(n): 입력된 값의 요소들 중 빈도수(frequency)가 높은 순으로 상위 n개를 리스트 안의 튜플 형태로 반환. n을 입력하지 않으면 요소 전체를 [('값', 개수)]의 형태로 반환
- subtract(): 요소를 뺌. 요소가 없는 경우 음수의 값 출력
- Counter 모듈은 산술/집합 연산이 가능함. 그러나 뺄셈에서 음수 값을 출력하지 않음
반응형
'Python' 카테고리의 다른 글
[Python] 객체 지향 프로그래밍_1 (0) | 2023.11.11 |
---|---|
[Python] 자료구조 - collections 모듈 - namedtuple (0) | 2023.11.10 |
[Python] 자료구조 - collections 모듈 - defaultdict (0) | 2023.11.10 |
[Python] 자료구조 - collections 모듈 - OrderecDict (0) | 2023.11.10 |
[Python] 자료구조 - collections 모듈 - deque (0) | 2023.11.10 |