더북(TheBook)

한글 토큰화 예제

한국어 토큰화는 앞서 배운 KoNLPy 라이브러리를 사용합니다. 9장 예제 data 폴더의 ratings_train.txt5 데이터 파일을 사용합니다.

코드 9-19 라이브러리 호출 및 데이터셋 준비

import csv
from konlpy.tag import Okt
from gensim.models import word2vec

f = open(r'..\data\ratings_train.txt', 'r', encoding='utf-8')
rdr = csv.reader(f, delimiter='\t')
rdw = list(rdr)
f.close()

한글 형태소 분석을 위해 오픈 소스 한글 형태소 분석기(Twitter(Okt))를 사용합니다.

코드 9-20 오픈 소스 한글 형태소 분석기 호출

twitter = Okt()

result = []
  for line in rdw: ------텍스트를 한 줄씩 처리
      malist = twitter.pos(line[1], norm=True, stem=True) ------ 형태소 분석
      r = []
      for word in malist:
          if not word[1] in ["Josa","Eomi","Punctuation"]:  ------ 조사, 어미, 문장 부호는 제외하고 처리
              r.append(word[0])
      rl = (" ".join(r)).strip() ------ 형태소 사이에 공백 “ ”을 넣고, 양쪽 공백은 삭제
      result.append(rl)
      print(rl)

 

 


  5 https://github.com/e9t/nsmc에 오픈된 데이터 중 하나입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.