Python Counter, sorted로 정렬하기
2022. 11. 17. 07:31ㆍProgramming
728x90
python을 사용할 때 자주 사용할 수록 괜찮은 함수 중 하나가 카운터라고 생각한다.
1. Counter
1-1. 기본 사용 방법
from collections import Counter
x = Counter({'a':5, 'b':3, 'c':7})
1-2. 빈도가 많은 element 부터 출력되도록 정렬
Counter.most_common() method 를 사용한다.
from collections import Counter
x = Counter({'a':5, 'b':3, 'c':7})
x.most_common()
# [('c', 7), ('a', 5), ('b', 3)]
1-3. 가장 빈도가 많은 element 확인하는 방법
1번의 함수를 아래와 같이 1 이라는 입력인자를 줘서 최빈값을 출력하게 할 수도 있다.
x.most_common(1)
# [('c', 7)]
728x90
2. Sorted 사용하기
카운터와 유사한 함수로는 sort(), sorted() 등이 있는데, 정렬 조건을 세밀하게 조정할 수 있는 함수는 sorted()를 추천한다.
2번의 함수 x.most_common()는 아래와 같이 출력될 수 있다. (단, 여기에서는 values는 표시 안되고 keys만 출력된다.)
sorted(x, key=x.get, reverse=True)
# ['c', 'a', 'b']
# x의 기본값인 keys에 해당하는 값을 가져와서 x.get 그 값을 기준으로 정렬
아니면 아래와 같이 x.items()를 가져와서, 각 item (key, value)의 value에 해당하는 값을 기준으로 정렬할 수도 있다.
>>> sorted(x.items(), key=lambda pair: pair[1], reverse=True)
[('c', 7), ('a', 5), ('b', 3)]
더 자세한 내용은 Python sorting howto 를 참고하면 된다.
반응형
'Programming' 카테고리의 다른 글
huggingface에서 ignore_mismatched_sizes 사용할 수 없을 때 (0) | 2022.11.22 |
---|---|
python virtual environments 파이썬 가상환경 세팅 (설치, activate, deactivate, 제거) (0) | 2022.11.18 |
SAP HANA DB에서 변수 사용하는 방법 (0) | 2022.11.16 |
Amazon SageMaker conda 가상환경 세팅하는 방법 (0) | 2022.11.03 |
Hadoop 하둡에서 데이터베이스, 테이블, 데이터 다루기 (0) | 2022.10.23 |