r9y9 / pyopenjtalk

Python wrapper for OpenJTalk
https://r9y9.github.io/pyopenjtalk/
Other
203 stars 70 forks source link

pyopenjtalk上での形態素解析について #39

Closed mule-engineer13 closed 2 years ago

mule-engineer13 commented 2 years ago

mule-engineer13と申します。 お忙しいところ、失礼いたします。

pyopenjtalk上での、文章の形態素解析について、質問させていただきます。

●やりたいこと 漢字を含む日本語の文章を漢字・かなのまま、語に分解する

●試したこと colab上で以下を実行

①音素を取得

import pyopenjtalk

text ="厚生労働省によりますと欧米などを中心に"
print(pyopenjtalk.g2p(text,kana=False,join=False))

・結果 ['k', 'o', 'o', 's', 'e', 'e', 'r', 'o', 'o', 'd', 'o', 'o', 'sh', 'o', 'o', 'n', 'i', 'y', 'o', 'r', 'i', 'm', 'a', 's', 'U', 't', 'o', 'o', 'o', 'b', 'e', 'e', 'n', 'a', 'd', 'o', 'o', 'ch', 'u', 'u', 'sh', 'i', 'N', 'n', 'i']

②「語」単位で文章を分割(カナ)

import pyopenjtalk

text ="厚生労働省によりますと欧米などを中心に"
print(pyopenjtalk.g2p(text,kana=True,join=False))

・結果 ['コーセーロードーショー', 'ニ', 'ヨリ', 'マス', 'ト', 'オーベー', 'ナド', 'ヲ', 'チューシン', 'ニ']

●質問 ②のような形で、漢字とかなのまま、文章を分割した結果を得ることは可能でしょうか。 ・取得したいデータの形式の例:['厚生労働省', 'に', 'より', 'ます', 'と', '欧米', 'など', 'を', '中心', 'に']

お手隙の際にご回答いただけますと幸いです。 何卒よろしくお願いいたします。

r9y9 commented 2 years ago

https://pypi.org/project/mecab-python3/ mecabをご利用するのはいかがでしょうか?

>>> import MeCab
>>> wakati = MeCab.Tagger("-Owakati")
>>> wakati.parse("pythonが大好きです").split()
['python', 'が', '大好き', 'です']
mule-engineer13 commented 2 years ago

ご回答ありがとうございます! 早速試してみます!