MacでRMeCab
目的
Mac上にMeCabを導入し、辞書をデフォルトからNeologdに変更
その後にRのRMeCabパッケージから呼び出して見ましょう。
作業
MeCab〜Neologd
必要なものを入れる前準備 Homebrewを入れましょう。
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
上記コマンドでMacにインストールされます。
次に、brewコマンドでMeCabと辞書その他必要なものを入れましょう。
brew install mecab mecab-ipadic git curl xz
git経由でNeologdをクローンします。
git clone --depth 1 https://github.com/neologd/mecab-ipadic-neologd.git
インストール先を確認します。
echo `mecab-config --dicdir`"/mecab-ipadic-neologd" > /usr/local/lib/mecab/dic/mecab-ipadic-neologd
※私の環境では上記のようになっています
ディレクトリを移動しましょう。
cd mecab-ipadic-neologd
インストールを行います。
./bin/install-mecab-ipadic-neologd -n -a
※-aオプションは全部入り、通常インストール(-aなし)では一部辞書はインストールされない
MeCabで通常使用する辞書にNeologdを指定します。
sudo find / -name mecabrc vim /etc/mecabrc
sudo find ~でmecabrsの場所を確認し、vimで編集します。
編集箇所は以下です。
変更前:dicdir = /usr/local/lib/mecab/dic/ipadic 変更後:dicdir = /usr/local/lib/mecab/dic/mecab-ipadic-neologd
これでMeCabをインストールし、辞書を切り替えることができました。
mecabコマンドで確認しましょう。
mecab
RMeCab
RMeCabを使用するためにはRとMeCabがMac上にインストールされている必要があります。
RMeCabパッケージをインストールしましょう。
install.packages("RMeCab", repos = "http://rmecab.jp/R", type = "source")
インストールができたら確認を行ってみましょう。
library("RMeCab") library("tidyverse") test_text <- "土曜日はヤーバンナイトさんとポケモンGOをしに中野に行きます、帰りか行きにバーガーキングで食べます" test_text %>% RMeCabC() %>% unlist()
出力を見るとNeologdの辞書を使用して形態素解析が行われているのがわかりますね!
名詞 助詞 名詞 名詞 助詞 名詞 "土曜日" "は" "ヤーバンナイト" "さん" "と" "ポケモンGO" 助詞 動詞 助詞 名詞 助詞 動詞 "を" "し" "に" "中野" "に" "行き" 助動詞 記号 名詞 助詞 名詞 助詞 "ます" "、" "帰り" "か" "行き" "に" 名詞 助詞 動詞 助動詞 "バーガーキング" "で" "食べ" "ます"
まとめ
さてこれでRMeCab+Neologdを使用して形態素解析ができるようになりましたが、
RのデータフレームからRMeCabにわたす場合、返却値がテキストのような形で非常に扱いにくく難儀しました。
これは自作関数を作成して処理をしたので別記事に底しておきたいと思います。
(しかしながら、大きいデータだと処理に時間がかかり実用には向いていなかった)