def hannanum(sentence): h = Hannanum() if jpype.isJVMStarted(): jpype.attachThreadToJVM() return h.analyze(sentence)
https://colab.research.google.com/drive/1tL2WjfE0v_es4YJCLGoEJM5NXs_O_ytW#scrollTo=1lxZgy_vjaah 3. https://konlpy.org/ko/latest/api/konlpy.tag/ API 예제 실행 4. https://konlpy.org/ko/latest/data/#corpora 말뭉치 5. https://konlpy.org/ko/latest/examples/ 사용 예시 ''' # Hannanum Class from konlpy.tag import Hannanum hannanum = Hannanum() print(hannanum.analyze(u'롯데마트의 흑마늘 양념 치킨이 논란이 되고 있다.')) #Kkma Class from konlpy.tag import Kkma kkma = Kkma() print(kkma.morphs(u'공부를 하면할수록 모르는게 많다는 것을 알게 됩니다.')) # Komoran Class from konlpy.tag import Komoran komoran = Komoran() print(komoran.morphs(u'우왕 코모란도 오픈소스가 되었어요')) # MeCab installation needed from konlpy.tag import Mecab mecab = Mecab(dicpath="C:\\mecab\\mecab-ko-dic") print(mecab.morphs(u'영등포구청역에 있는 맛집 좀 알려주세요.'))
# In[2]: get_ipython().system(' pip install JPype1-1.2.0-cp38-cp38-win_amd64.whl') # In[2]: text = """아름답지만 다소 복잡하기도한 한국어는 전세계에서 13번째로 많이 사용되는 언어입니다.""" # ### 3.1 HanNanum # In[5]: from konlpy.tag import Hannanum han = Hannanum() han.analyze(text) #Hannanum (ntags=69) # ### 형태소 분석 및 품사 태깅 # - Korean POS tags comparison chart: https://docs.google.com/spreadsheets/d/1OGAjUvalBuX-oZvZ_-9tEfYD2gQe7hTGsgUpiiBSXI8/edit#gid=0 # In[6]: #형태소 분석만 print(han.morphs(text)) # In[7]: #품사 태깅 print(han.pos(text, ntags=9)) #han.pos()의 기본값 ntags=9 # In[8]:
text = "아름답지만 다소 복잡하기도 한 한국어는 전세계에서 13번째로 많이 사용되는 언어입니다." # 한나눔 형태소 분석 from konlpy.tag import Hannanum han = Hannanum() print(han.analyze(text)) print(han.morphs(text)) print(han.nouns(text))
hannanum.analyze # 구(Phrase) 분석 hannanum.morphs # 형태소 분석 hannanum.nouns # 명사 분석 hannanum.pos # 형태소 분석 태깅 i = 0 with open('./data/auctionComment_영양제.json', 'rt', encoding='UTF8') as json_file: for line in json_file: try: y = json.loads(line) # json_data = json.load(line) # print(json_data["product_title"]) y["analyze"] = hannanum.analyze(y["comment_content"]) y["morphs"] = hannanum.morphs(y["comment_content"]) y["pos"] = hannanum.pos(y["comment_content"]) y["nouns"] = hannanum.nouns(y["comment_content"]) print(y) with open("data/analyzed_영양제.json", "a", encoding="utf-8") as fp: json.dump(y, fp, ensure_ascii=False) fp.write("\n") i = i + 1 if i == 2000: break except Exception as e: print(e)
# Twitter 객체의 pos()메소드 이용 # pos(분석할 문장, norm옵션, stem옵션) from konlpy.tag import Twitter twitter = Twitter() #트위터 객체 생성 wordList = twitter.pos("친구가 집에 놀러왔다",norm=True,stem=True) print(wordList) # 한나눔(Hannanum) 분석기 from konlpy.tag import Hannanum hannanum = Hannanum() # analyze() 메소드는 가독성이 떨어진다! wordList = hannanum.analyze(u'롯데마트의 흑마늘 양념 치킨이 논란이 되고 있다') print(wordList) # morphs() 는 한 줄에 구분되는 형태소를 출력. 품사정보 X wordList = hannanum.morphs(u'롯데마트의 흑마늘 양념 치킨이 논란이 되고 있다') print(wordList) nounList = hannanum.nouns(u'다람쥐는 새 쳇바퀴에 타고 싶다') print(hannanum.pos(u'웃으면 더 행복합니다')
para = "형태소 분석을 시작합니다. 저는 김유진 입니다." ex_sent = kkma.sentences(para) print(len(ex_sent)) print(ex_sent) ex_nouns = kkma.nouns(para) print(len(ex_nouns)) print(ex_nouns) ex_pos = kkma.pos(para) print(len(ex_pos)) print(ex_pos) text_data = [] for (text, tclass) in ex_pos: if tclass == 'NNG' or tclass == 'NNP' or tclass == 'NP': text_data.append(text) print(text_data) from konlpy.tag import Hannanum hannanum = Hannanum() para = "형태소 분석을 시작합니다. 저는 김유진 입니다." hanana = hannanum.analyze(para) print(hanana)