MeCab入門

Pocket

PythonでMeCabを使ってみます。

準備

MeCabを使うにはライブラリと辞書が必要になります。
私はライブラリとしてmecab-python3、辞書としてunidic-liteを使っています。
次のようにしてインストールします。

pip install mecab-python3
pip install unidic-lite

基本

MeCabを使うと分かち書きをしてくれます。文章を形態素に分解することです。
parseを使うとスペース区切りの文字列を返します。
これをsplitでリストにします。

import MeCab
src = "吾輩は猫である。名前はまだ無い。どこで生れたかとんと見当がつかぬ。"
wakati = MeCab.Tagger("-Owakati")
dst = wakati.parse(src)
terms = dst.split()
print(dst)
print(terms)

【実行結果】

吾輩 は 猫 で ある 。 名前 は まだ 無い 。 どこ で 生れ た か と んと 見当 が つか ぬ 。
['吾輩', 'は', '猫', 'で', 'ある', '。', '名前', 'は', 'まだ', '無い', '。', 'どこ', 'で', '生れ', 'た', 'か', 'と', 'んと', '見当', 'が', 'つか', 'ぬ', '。']

詳細

import MeCab
src = "吾輩は猫である。名前はまだ無い。どこで生れたかとんと見当がつかぬ。"
wakati = MeCab.Tagger("")
node = wakati.parseToNode(src)
while node:
  feature = node.feature.split(',')
  print(feature)
  node = node.next

【実行結果】

['BOS/EOS', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*']
['代名詞', '*', '*', '*', '*', '*', 'ワガハイ', '我が輩', '吾輩', 'ワガハイ', '吾輩', 'ワガハイ', '混', '*', '*', '*', '*', 'ワガハイ', 'ワガハイ', 'ワガハイ', 'ワガハイ', '*', '*', '0', '*', '*']
['助詞', '係助詞', '*', '*', '*', '*', 'ハ', 'は', 'は', 'ワ', 'は', 'ワ', '和', '*', '*', '*', '*', 'ハ', 'ハ', 'ハ', 'ハ', '*', '*', '*', '"動詞%F2@0', '名詞%F1', '形容詞%F2@-1"', '*']
['名詞', '普通名詞', '一般', '*', '*', '*', 'ネコ', '猫', '猫', 'ネコ', '猫', 'ネコ', '和', '*', '*', '*', '*', 'ネコ', 'ネコ', 'ネコ', 'ネコ', '*', '*', '1', 'C4', '*']
['助動詞', '*', '*', '*', '助動詞-ダ', '連用形-一般', 'ダ', 'だ', 'で', 'デ', 'だ', 'ダ', '和', '*', '*', '*', '*', 'デ', 'ダ', 'デ', 'ダ', '*', '*', '*', '名詞%F1', '*']
['動詞', '非自立可能', '*', '*', '五段-ラ行', '終止形-一般', 'アル', '有る', 'ある', 'アル', 'ある', 'アル', '和', '*', '*', '*', '*', 'アル', 'アル', 'アル', 'アル', '*', '*', '1', 'C3', '*']
['補助記号', '句点', '*', '*', '*', '*', '', '。', '。', '', '。', '', '記号', '*', '*', '*', '*', '', '', '', '', '*', '*', '*', '*', '*']
['名詞', '普通名詞', '一般', '*', '*', '*', 'ナマエ', '名前', '名前', 'ナマエ', '名前', 'ナマエ', '和', '*', '*', '*', '*', 'ナマエ', 'ナマエ', 'ナマエ', 'ナマエ', '*', '*', '0', 'C2', '*']
['助詞', '係助詞', '*', '*', '*', '*', 'ハ', 'は', 'は', 'ワ', 'は', 'ワ', '和', '*', '*', '*', '*', 'ハ', 'ハ', 'ハ', 'ハ', '*', '*', '*', '"動詞%F2@0', '名詞%F1', '形容詞%F2@-1"', '*']
['副詞', '*', '*', '*', '*', '*', 'マダ', '未だ', 'まだ', 'マダ', 'まだ', 'マダ', '和', '*', '*', '*', '*', 'マダ', 'マダ', 'マダ', 'マダ', '*', '*', '1', '*', '*']
['形容詞', '非自立可能', '*', '*', '形容詞', '終止形-一般', 'ナイ', '無い', '無い', 'ナイ', '無い', 'ナイ', '和', '*', '*', '*', '*', 'ナイ', 'ナイ', 'ナイ', 'ナイ', '*', '*', '1', 'C3', '*']
['補助記号', '句点', '*', '*', '*', '*', '', '。', '。', '', '。', '', '記号', '*', '*', '*', '*', '', '', '', '', '*', '*', '*', '*', '*']
['代名詞', '*', '*', '*', '*', '*', 'ドコ', '何処', 'どこ', 'ドコ', 'どこ', 'ドコ', '和', '*', '*', '*', '*', 'ドコ', 'ドコ', 'ドコ', 'ドコ', '*', '*', '1', '*', '*']
['助詞', '格助詞', '*', '*', '*', '*', 'デ', 'で', 'で', 'デ', 'で', 'デ', '和', '*', '*', '*', '*', 'デ', 'デ', 'デ', 'デ', '*', '*', '*', '"動詞%F2@0', '名詞%F1"', '*']
['動詞', '一般', '*', '*', '下一段-ラ行', '連用形-一般', 'ウマレル', '生まれる', '生れ', 'ウマレ', '生れる', 'ウマレル', '和', '*', '*', '*', '*', 'ウマレ', 'ウマレル', 'ウマレ', 'ウマレル', '*', '*', '0', 'C2', '*']
['助動詞', '*', '*', '*', '助動詞-タ', '終止形-一般', 'タ', 'た', 'た', 'タ', 'た', 'タ', '和', '*', '*', '*', '*', 'タ', 'タ', 'タ', 'タ', '*', '*', '*', '"動詞%F2@1', '形容詞%F4@-2"', '*']
['助詞', '終助詞', '*', '*', '*', '*', 'カ', 'か', 'か', 'カ', 'か', 'カ', '和', '*', '*', '*', '*', 'カ', 'カ', 'カ', 'カ', '*', '*', '*', '"動詞%F2@0', '形容詞%F2@-1', '名詞%F1"', '*']
['助詞', '格助詞', '*', '*', '*', '*', 'ト', 'と', 'と', 'ト', 'と', 'ト', '和', '*', '*', '*', '*', 'ト', 'ト', 'ト', 'ト', '*', '*', '*', '"名詞%F1', '動詞%F1', '形容詞%F2@-1"', '*']
['感動詞', 'フィラー', '*', '*', '*', '*', 'ウント', 'うんと', 'んと', 'ント', 'んと', 'ント', '和', '*', '*', '*', '*', 'ント', 'ント', 'ント', 'ント', '*', '*', '0', '*', '*']
['名詞', '普通名詞', '一般', '*', '*', '*', 'ケントウ', '見当', '見当', 'ケントー', '見当', 'ケントー', '漢', '*', '*', '*', '*', 'ケントウ', 'ケントウ', 'ケントウ', 'ケントウ', '*', '*', '3', 'C2', '*']
['助詞', '格助詞', '*', '*', '*', '*', 'ガ', 'が', 'が', 'ガ', 'が', 'ガ', '和', '*', '*', '*', '*', 'ガ', 'ガ', 'ガ', 'ガ', '*', '*', '*', '"動詞%F2@0', '名詞%F1"', '*']
['動詞', '非自立可能', '*', '*', '五段-カ行', '未然形-一般', 'ツク', '付く', 'つか', 'ツカ', 'つく', 'ツク', '和', 'ツ濁', '基本形', '*', '*', 'ツカ', 'ツク', 'ツカ', 'ツク', '*', '*', '"1', '2"', 'C1', '*']
['助動詞', '*', '*', '*', '助動詞-ヌ', '終止形-一般', 'ズ', 'ず', 'ぬ', 'ヌ', 'ぬ', 'ヌ', '和', '*', '*', '*', '*', 'ヌ', 'ヌ', 'ヌ', 'ヌ', '*', '*', '*', '動詞%F4@0', '*']
['補助記号', '句点', '*', '*', '*', '*', '', '。', '。', '', '。', '', '記号', '*', '*', '*', '*', '', '', '', '', '*', '*', '*', '*', '*']
['BOS/EOS', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*', '*']

featureの内容は次のとおりです。
0:品詞
1:品詞細分類1
2:品詞細分類2
3:品詞細分類3
4:活用型
5:活用系
6:レンマ
7:読み
8:発音

[ 2022年3月31日 | カテゴリー: Python | タグ: , ]

« | »

コメントを残す

メールアドレスが公開されることはありません。

送信してください。


タグ

カテゴリー

最近の投稿

最近のコメント

固定ページ

アーカイブ

stabucky

写真

メタ情報