프로그래밍 문법/python

collections 패키지의 Counter함수를 이용한 빈도 확인

씩씩한 IT블로그 2020. 8. 11. 22:10
반응형

1. 설명

리스트를 입력했을 때 빈도를 측정해주는 함수이다.

다음과 같은 word 리스트가 있다고 하자.

['존경', '국민', '여러분', '경자년庚子年', '독립운동', '임시정부', '수립', '년', '해', '올해', '혁명', '주년', '민주화운동', '주년', '년', '전', '촛불', '민주공화국', '숭고', '정신', '정의', '안전', '평화', '행복', '나라다운', '나라', '국민', '준엄한', '명령', '우리', '정부', '과감', '변화', '선택', '경제', '사회', '구조', '근본적', '변화', '개혁', '우리', '사회', '만연한', '반칙', '특권', '청산', '불평등', '양극화', '극복', '노력']

 

아래와 같은 코드를 이용하여 count를 출력하면 다음과 같이 나온다.

from collections import Counter

print(word)

count=Counter(word)

print(count)
Counter({'국민': 2, '년': 2, '주년': 2, '우리': 2, '변화': 2, '사회': 2, '존경': 1, '여러분': 1, '경자년庚子年': 1, '독립운동': 1, '임시정부': 1, '수립': 1, '해': 1, '올해': 1, '혁명': 1, '민주화운동': 1, '전': 1, '촛불': 1, '민주공화국': 1, '숭고': 1, '정신': 1, '정의': 1, '안전': 1, '평화': 1, '행복': 1, '나라다운': 1, '나라': 1, '준엄한': 1, '명령': 1, '정부': 1, '과감': 1, '선택': 1, '경제': 1, '구조': 1, '근본적': 1, '개혁': 1, '만연한': 1, '반칙': 1, '특권': 1, '청산': 1, '불평등': 1, '양극화': 1, '극복': 1, '노력': 1})

 

2. 접근

딕셔너리처럼 접근은 key값으로 하면 되고, Value에는 나온 횟수가 들어간다

print(count["국민"])
2

 

 

3. 상위 단어 추출

아래와 같은 most_common 함수를 이용하여 상위단어 빈도의 단어 100개를 추출할 수도 있다.

noun_list=count.most_common(100)
for v in noun_list:
    print(v)
('국민', 2)
('년', 2)
('주년', 2)
('우리', 2)
('변화', 2)
('사회', 2)
('존경', 1)
('여러분', 1)
('경자년庚子年', 1)
('독립운동', 1)
('임시정부', 1)
('수립', 1)
('해', 1)
('올해', 1)
('혁명', 1)
('민주화운동', 1)
('전', 1)
('촛불', 1)
('민주공화국', 1)
('숭고', 1)
('정신', 1)
('정의', 1)
('안전', 1)
('평화', 1)
('행복', 1)
('나라다운', 1)
('나라', 1)
('준엄한', 1)
('명령', 1)
('정부', 1)
('과감', 1)
('선택', 1)
('경제', 1)
('구조', 1)
('근본적', 1)
('개혁', 1)
('만연한', 1)
('반칙', 1)
('특권', 1)
('청산', 1)
('불평등', 1)
('양극화', 1)
('극복', 1)
('노력', 1)
반응형