반응형
1. import module
from konlpy.tag import Hannanum
from wordcloud import WordCloud
import matplotlib.pyplot as plt
from collections import Counter
2. 대한민국 헌법
3. 한글 형태소 분석 Code
- TXT 파일 로드
text = ''
with open("data/대한민국헌법.txt", encoding="utf-8") as f:
text = f.read()
- 한나눔 사용 변수 지정
hannanum = Hannanum()
- 명사 분석
nouns = hannanum.nouns(text)
print(nouns)
- 문장 분석
morphs = hannanum.morphs(text)
print(morphs)
- 형태소 분석
pos = hannanum.pos(text)
print(pos)
- 명사 중에 길이가 1이상인것만 추출
words = []
for n in nouns:
if len(n) > 1:
words.append(n)
print(words)
- 빈도수 계산
count = Counter(words)
- 상위 100건 추출
most = count.most_common(100)
- 딕셔너리 구성
tags = {}
for n, c in most:
tags[n] = c
- 워드클라우드 생성
wc = WordCloud(font_path="NanumGothic", width=1200, height=800,
scale=2.0, max_font_size=250)
gen = wc.generate_from_frequencies(tags)
plt.figure()
plt.imshow(gen, interpolation='bilinear')
wc.to_file("korean.png")
plt.close()
반응형
'Python_Intermediate > WordCloud' 카테고리의 다른 글
190531>Korea News keyword wordcloud (0) | 2019.05.31 |
---|---|
190529>Korea News keyword wordcloud (0) | 2019.05.29 |
kkma 한글 형태소 분석 후 워드클라우드 생성 - 대한민국헌법 (1) | 2019.05.21 |
190517>Korea News keyword wordcloud (0) | 2019.05.17 |
190508>Korea News keyword wordcloud (0) | 2019.05.08 |