파이썬 Counter 객체에서 가장 개수가 많은 항목 확인
- Get link
- X
- Other Apps
by joviansummer
original STEEMIT post: https://steemit.com/blog/@joviansummer/counter
우선 파이썬 Counter 객체를 이용해서 리스트(list) 원소의 개수를 세는 방법은 이전 포스팅을 참고하시기 바랍니다. 아래의 링크입니다.
파이썬에서 리스트(list) 원소의 개수를 세는 방법 - Counter
Counter 객체의 most_common() 함수를 이용하면 가장 많은 개수를 가진 항목을 확인 할 수 있습니다. 이전 포스팅의 예제 코드를 이용해 보자면 아래와 같습니다.
from collections import Counter
c = Counter()
x = ['apple', 'banana', 'orange', 'apple']
y = ['orange', 'apple', 'lemon']
c.update(x)
c.update(y)
for key in c:
print(key, '-', c[key])
apple - 3
banana - 1
orange - 2
lemon - 1
most_common() 함수는 가장 개수가 많은 원소부터 차례대로 정렬된 리스트(list)를 만듭니다.
m = c.most_common()
print(m)
[('apple', 3), ('orange', 2), ('banana', 1), ('lemon', 1)]
most_common() 함수는 키(key)와 값(value)이 튜플(tuple) 형식으로 이루어진 원소를 가진 리스트(list)를 반환합니다. 위의 경우 ('apple', 3)은 m[0], 'apple'은 m[0][0], 3은 m[0][1]에 할당될 것입니다.
가장 개수가 많은 원소만 가져와 확인하려면 아래와 같이 인자(argument)를 1로 주면 됩니다.
m = c.most_common(1)
print(m)
[('apple', 3)]
만약 가장 개수가 많은 원소와 두번째로 개수가 많은 원소를 확인하려면 아래와 같이 될 것입니다.
m = c.most_common(2)
print(m)
[('apple', 3), ('orange', 2)]
총 몇개의 항목이 있는지는 Counter 객체의 길이를 확인하면 됩니다.
print(len(c))
4
@joviansummer의 스팀 프로젝트
스팀 증인노드를 운영중입니다. @jswit에 증인투표해 주시면 감사하겠습니다.
(https://steemitwallet.com/~witnesses)
jsup 서비스에 큐레이션 보상 분배 기능이 추가되었습니다.
jSTEEM 프로젝트 - 텔레그램 챗봇으로 구현하는 스팀 블럭체인 탐색기
Posted through the AVLE Dapp (https://avle.io)
- Get link
- X
- Other Apps
Comments
Post a Comment