pythonでMeCabを使う(各OSでのインストール、NEologd、辞書のカスタマイズなど)

 

この記事ではMeCabのインストール方法、使い方、NEologd、辞書のカスタマイズなどについてまとめている記事になります。

 

各OSでのインストール

環境によってインストール方法は違ってくるので、注意してください。

Ubuntu

sudo apt install aptitude
sudo aptitude install mecab libmecab-dev mecab-ipadic-utf8 git make curl xz-utils swig file
pip install mecab-python3

Google Colaboratory

!apt-get -q -y install sudo file mecab libmecab-dev mecab-ipadic-utf8 git curl python-mecab swig > /dev/null
!pip install mecab-python3 > /dev/null

以前はこちらのやり方でインストールできたのですが、今は上のやり方でインストールしないとインストールに失敗します。

Mac

Macでインストールしようとしたら下のようなエラーがでた。

  MeCab_wrap.cpp:3051:10: fatal error: 'stdexcept' file not found 
#include <stdexcept>
^~~~~~~~~~~
1 warning and 1 error generated.
error: command 'gcc' failed with exit status 1
----------------------------------------
Failed building wheel for mecab-python

結局解決方法がわからないので、natto-pyを使うことにする。

pip install natto-py

以下のように使う。

from natto import MeCab
tagger = MeCab()
print(tagger.parse("今日は良い天気ですね"))
"""結果
今日	名詞,副詞可能,*,*,*,*,今日,キョウ,キョー
は	助詞,係助詞,*,*,*,*,は,ハ,ワ
良い	形容詞,自立,*,*,形容詞・アウオ段,基本形,良い,ヨイ,ヨイ
天気	名詞,一般,*,*,*,*,天気,テンキ,テンキ
です	助動詞,*,*,*,特殊・デス,基本形,です,デス,デス
ね	助詞,終助詞,*,*,*,*,ね,ネ,ネ
EOS
"""

Windows

ここで紹介しているやり方は python3.6+ を使っている方を対象としています。

以下の環境で動作確認済みです。

  • Windows10 64bit
  • python 3.6
  • Anaconda

1 - MeCabインストーラをダウンロードする。

 1-1 https://github.com/ikegami-yukino/mecab/releases/tag/v0.996に行く。

 1-2 mecab-0.996-64.exeをダウンロード。

 1-3 インストーラを起動して任意の場所にインストールする。

2 - libmecab.libをコピペする。

libmecab.libは C:\任意の場所\MeCab\bin\ にあります。なので、MeCabをProgram Filesにインストールした場合、C:\Program Files\MeCab\bin\ にlibmecab.libがあるはずです。

これを、site-packages にコピペします。

私はAnacondaを使っているので、C:\Users\username\Anaconda3\Lib\site-packages\

私の場合はここにコピペしました。

※site-packagesがどこにあるかわからないときは以下のコードを対話型シェルにて実行してみてください。

>python
>>> import site
>>> site.getsitepackages()

3 - パッケージのインストール。

以下のサイトからパッケージをダウンロードします。

https://pypi.org/project/mecab-python-windows/#files

私の環境はpython3.6なので、 mecab_python_windows-0.996.0-cp36-cp36m-win_amd64.whl をダウンロードしました。

次にコマンドプロンプトを開いて、ホームディレクトリから Downloads に行き、MeCabのインストールをします。

> cd Downloads
> pip install "mecab_python_windows-0.996.0-cp36-cp36m-win_amd64.whl"

これでMeCabのインストールは完了です。

NEologdのインストール

mecab-ipadic-NEologdをWindowsにインストールするには

www.pytry3g.com

分かち書き

MeCabを使った分かち書きの例。

まずはインポート

import MeCab

 

今日はいい天気ですね。分かち書きしてみる。

sample = "今日はいい天気ですね。"
tagger = MeCab.Tagger("-Owakati")
result = tagger.parse(sample).strip()
print(result)

分かち書きの結果

今日 は いい 天気 です ね 。

名詞のみを取り出す

tagger = MeCab.Tagger("-Ochasen")
def tokenizer(sentence):
    tag = tagger.parseToNode(sentence)
    morphemes = []
    while tag:
        features = tag.feature.split(",")
        pos = features[0]
        if pos == "名詞":
            morphemes.append(tag.surface)
        tag = tag.next
    return morphemes

result = tokenizer(sample)
print(result)

結果

['今日', '天気']

辞書のカスタマイズ

ipadicとNEologdの併用

www.pytry3g.com

自分でカスタマイズした辞書(ユーザー辞書)を追加する。

ユーザ辞書を追加してみました。

www.pytry3g.com