데이터 분석/Python
형태소 분석기
eunki
2021. 6. 3. 18:08
728x90
형태소 분석기
- 꼬꼬마 http://kkma.snu.ac.kr/documents/
- 한나눔 http://semanticweb.kaist.ac.kr/hannanum/index.html
- 트위터 https://github.com/twitter/twitter-korean-text
!pip install konlpy
from konlpy.tag import Hannanum
from konlpy.tag import Twitter
from konlpy.tag import Kkma
hannanum=Hannanum()
twitter=Twitter()
kkma = Kkma()
꼬꼬마 형태소 분석기
- 문장을 형태소 단위로 분리하고 품사를 태깅한다.
- 품사태그는 일반명사(NNG), 고유명사(NNP), 동사(VV), 형용사(VA) 등이 있다.
- 형태소 리스트 확인: http://kkma.snu.ac.kr/documents/index.jsp?doc=postag
print(kkma.sentences('아버지가 방에 들어가셨다. 아버지 가방에 들어가셨다. 아버지가 방 안에 있는 가방에 들어가셨다.'))
# ['아버지가 방에 들어가셨다.', '아버지 가방에 들어가셨다.', '아버지가 방 안에 있는 가방에 들어가셨다.']
kkma.pos('아버지가 방에 들어가셨다.')
# [('아버지', 'NNG'), ('가', 'JKS'), ('방', 'NNG'), ('에', 'JKM'), ('들어가', 'VV'), ('시', 'EPH'), ('었', 'EPT'), ('다', 'EFN'), ('.', 'SF')]
kkma.pos('아버지 가방에 들어가셨다.')
# [('아버지', 'NNG'), ('가방', 'NNG'), ('에', 'JKM'), ('들어가', 'VV'), ('시', 'EPH'), ('었', 'EPT'), ('다', 'EFN'), ('.', 'SF')]
kkma.pos('아버지가 방 안에 있는 가방에 들어가셨다.')
# [('아버지', 'NNG'), ('가', 'JKS'), ('방', 'NNG'), ('안', 'NNG'), ('에', 'JKM'), ('있', 'VV'), ('는', 'ETD'), ('가방', 'NNG'), ('에', 'JKM'), ('들어가', 'VV'), ('시', 'EPH'), ('었', 'EPT'), ('다', 'EFN'), ('.', 'SF')]
한나눔 형태소 분석기
hannanum.pos('아버지가 방에 들어가셨다.')
# [('아버지', 'N'), ('가', 'J'), ('방', 'N'), ('에', 'J'), ('들', 'P'), ('어', 'E'), ('가', 'P'), ('셨다', 'E'), ('.', 'S')]
hannanum.pos('아버지 가방에 들어가셨다.')
# [('아버지', 'N'), ('가방', 'N'), ('에', 'J'), ('들', 'P'), ('어', 'E'), ('가', 'P'), ('셨다', 'E'), ('.', 'S')]
hannanum.pos('아버지가 방 안에 있는 가방에 들어가셨다.')
# [('아버지', 'N'), ('가', 'J'), ('방', 'N'), ('안', 'N'), ('에', 'J'), ('있', 'P'), ('는', 'E'), ('가방', 'N'), ('에', 'J'), ('들', 'P'), ('어', 'E'), ('가', 'P'), ('셨다', 'E'), ('.', 'S')]
트위터 형태소 분석기
twitter.pos('아버지가 방에 들어가셨다.')
# [('아버지', 'Noun'), ('가', 'Josa'), ('방', 'Noun'), ('에', 'Josa'), ('들어가셨다', 'Verb'), ('.', 'Punctuation')]
twitter.pos('아버지 가방에 들어가셨다.')
# [('아버지', 'Noun'), ('가방', 'Noun'), ('에', 'Josa'), ('들어가셨다', 'Verb'), ('.', 'Punctuation')]
twitter.pos('아버지가 방 안에 있는 가방에 들어가셨다.')
# [('아버지', 'Noun'), ('가', 'Josa'), ('방', 'Noun'), ('안', 'Noun'), ('에', 'Josa'), ('있는', 'Adjective'), ('가방', 'Noun'), ('에', 'Josa'), ('들어가셨다', 'Verb'), ('.', 'Punctuation')]
728x90