토픽 모델링을 위한 전처리
시각화를 위한 글꼴 설정
colab을 사용할 경우 시각화를 위한 한글 글꼴 설정을 먼저 해준다.
글꼴 설치
!apt install -y fonts-nanum
!sudo fc-cache -fv
!rm ~/.cache/matplotlib -rf
글꼴 설치 후 런타임 다시 시작
글꼴 이름 찾기
from matplotlib import font_manager
for font in font_manager.fontManager.ttflist:
if 'Nanum' in font.name:
print(font.name, font.fname)
Nanum 계열의 글꼴 설정
import matplotlib.pyplot as plt
plt.rc('font', family='NanumGothic')
plt.rc('axes', unicode_minus=False)
문서 단어 행렬
설치
!pip install kiwipiepy
명사 추출 함수
import kiwipiepy
kiwi = kiwipiepy.Kiwi()
def extract_nouns(text):
for token in kiwi.tokenize(text):
if token.tag in {'NNG', 'NNP'}:
yield token.form
데이터
import pandas as pd
df = pd.read_excel('patents.xlsx')
문서 단어 행렬
from sklearn.feature_extraction.text import CountVectorizer
cv = CountVectorizer(tokenizer=extract_nouns, min_df=10)
dtm = cv.fit_transform(df.abstract)
고빈도 단어 보기
word_count = pd.DataFrame({
'word': cv.get_feature_names_out(),
'count': dtm.sum(axis=0).flat
})
word_count.sort_values('count', ascending=False).head(20)