python
파이썬 collections 모듈 Counter 사용법
반응형
- Counter() : 문자열이나, list 의 요소를 카운팅하여 많은 순으로 딕셔너리형태로 리턴한다
from collections import Counter
a_list = ['a','s','d','s']
Counter(a_list)
=> {'s':2,'a':a,'d':1}
- most_common() : 개수가 많은 순으로 정렬된 튜플 배열 리스트를 리턴한다
from collections import Counter
a_list = ['a','s','d','s']
Counter(a_list).most_common()
=> [('s', 2), ('a', 1), ('d', 1)]
# 몇개 보여줄지 숫자를 넣어 조절
Counter(a_list).most_common(2)
=> [('s', 2), ('a', 1)]
- 활용법
sorted(a_list) 먼저 사용하고 -> Counter() 사용
from collections import Counter
a_list = ['a','s','d','d','s']
# 리스트 순서대로 먼저 많은 것 순서
Counter(a_list).most_common()
=> [('s', 2), ('d', 2), ('a', 1)]
b_list = sorted(a_list)
=> ['a', 'd', 'd', 's', 's']
# 알파벳 순
Counter(b_list).most_common()
=> [('d', 2), ('s', 2), ('a', 1)]
- sorted( a_list , key=labda x:x) 함수식을 이용하여 정렬
a_list = ['a', 's', 'd', 'd', 's', 'x']
# 숫자 역순(내림차순), 문자 역순(아스키 값 이용)
a_counter = Counter(a_list).most_common()
print(sorted(a_counter, key=lambda x: (-x[1], -ord(x[0]))))
=> [('s', 2), ('d', 2), ('x', 1), ('a', 1)]
반응형
'python' 카테고리의 다른 글
파이썬 set() 집합 함수 총정리 (0) | 2021.06.21 |
---|---|
[자료구조] 파이썬 스택(stack) 총정리 (3) | 2021.06.21 |
[자료구조] 파이썬 큐(Queue), deque 사용법 총정리 (0) | 2021.06.19 |
람다(lambda) 총 정리, key sort, key 정렬 (0) | 2021.05.14 |
[Python] 파이썬 모듈 총정리 if __name__=="__main__" (0) | 2021.04.29 |
댓글