MecabをPythonから使いたい
2015/07/05
ベイズ分類器を自分で作りたかった。
そのためには、文書を単語の集合に変換する必要がある。
単語に分解するためにMecabを使うことにした。
pyenvで2.7.Xをインストール
Python3.X系だと一部のメソッド呼び出しでエラーが発生したので。。
1 2 |
pyenv install 2.7.8 pyenv local 2.7.8 |
mecab-0.996をインストール
mecab-0.996をゲットする。
で、セットアップ用のスクリプトがあるので実行する。
1 |
python /path/to/mecab-python-0.996/setup.py install |
ついでにmecab-ipadic-neologdをインストール
1 2 3 |
git clone --depth 1 https://github.com/neologd/mecab-ipadic-neologd.git cd mecab-ipadic-neologd ./bin/install-mecab-ipadic-neologd -n |
ちゃんとインストールされたか確認する。
1 2 |
anal% echo `mecab-config --dicdir`"/mecab-ipadic-neologd" /usr/local/Cellar/mecab/0.996/lib/mecab/dic/mecab-ipadic-neologd |
大丈夫そう。
ためしに動かしてみる
https://github.com/neologd/mecab-ipadic-neologd/wiki/ProgrammingLanguage.ja#python
↑に書いてるヤツコピペしたけど動かなかったので下のようになった。
1 2 3 4 5 6 7 8 9 10 |
#!/usr/bin/env python # coding: utf-8 import MeCab input = 'すもももももももものうち' mt = MeCab.Tagger("-Ochasen -d /usr/local/Cellar/mecab/0.996/lib/mecab/dic/mecab-ipadic-neologd/") node = mt.parseToNode(input) while node: print node.surface, node.feature node = node.next |
で、実行してみる。
1 2 3 4 |
anal% python hoge.py BOS/EOS,*,*,*,*,*,*,*,* すもももももももものうち 名詞,固有名詞,一般,*,*,*,すもももももももものうち,スモモモモモモモモノウチ,スモモモモモモモモノウチ BOS/EOS,*,*,*,*,*,*,*,* |
なんか動いてそう。
336px
336px
関連記事
-
-
MacでDockerした感想文
Co …
-
-
goで無限ループ
しょ …
-
-
開発で詰まったときにググるキーワード
そも …
-
-
Docker Machineのメモ
随時 …
-
-
Dockerでよく使うコマンド
随時 …
- PREV
- [WIP]AndroidでParseを使ってみる
- NEXT
- Docker Machineのメモ