list에서 각 요소가 몇개인지 파악하기 위해 사용할 수 있는 collections.Counter에 대해 알아보겠습니다.
사용방법은 굉장히 간단합니다.
먼저 random을 활용해서 random_list를 만들어 줍니다.
import random
import numpy as np
arr = [random.choice(['A', 'B', 'C']) for _ in range(50)]
print(arr)
np.unique(arr)
그 이후 collections에 Counter를 불러와 사용해주면 끝입니다.
from collections import Counter
counter = Counter(arr)
print(counter)
for value, count in counter.items():
print(f'{value}: {count}개')
## Counter({'C': 23, 'A': 15, 'B': 12})
## C: 23개
## A: 15개
## B: 12개
Counter의 경우 key,value 형식으로 해당 list 요소의 개수를 파악해 줍니다.
이걸 직접 구현해보도록 하겠습니다.
def counter_class(word):
counter = {}
for item in word:
if item not in counter:
counter[item] = 0
counter[item] += 1
return counter
counter_class(arr)
## {'C': 23, 'A': 15, 'B': 12}
위 코드처럼 먼저 arr를 받아온 뒤 counter = {} 을 만들어준뒤
for문을 돌며 arr의 요소를 count를 합니다.
저장은 key, value 형식으로 count를 하여 최종 담아주면 끝입니다.
감사합니다.
'python' 카테고리의 다른 글
[python] BeautifulSoup header 설정 방법 (0) | 2024.02.19 |
---|---|
python list unique 값 확인 하는 방법 (0) | 2023.11.15 |
python을 활용하여 json 데이터 받아오기 (df 변환) (0) | 2023.08.28 |