おすすめノイズキャンセリングヘッドホンはこちら
テキストマイニング

【R】RMeCabで簡単に形態素解析(単語に分けたり、品詞をみたり)してみる【RMeCabCの使い方】

RMeCabC

RMeCabをインストールしたけど…

どうやって使えばいいの?

という方対象です。

RMeCabを使って、このようなことをしていきますわ。

  • それぞれの単語にわける
  • 名詞・動詞などの品詞名をつける

とりあえず【RMeCab】を使ってみたい人におすすめです。

今回の目的

【RMeCab】で、単語ごとにわける・品詞名(形態素解析とよぶ)をつける。

実行環境

  • Windows10(MacでもLinuxでも可)
  • MeCab・RMeCabインストール済み
  • Rstudio

MeCab・RMeCabをインストールしていない人は、【MeCab】を【R】で使えるようにするための【RMeCab】を導入する方法・流れ【Windows編】

必要なパッケージ

  • RMeCab

先に読み読み込んでおきましょう。

パッケージ読み込み

library(RMeCab)

短い文を形態素解析する

「わたしはグミが好きだ」これを解析していきましょう。

metestという変数にいれます。

RMeCabC

metest <- RMeCabC(“わたしはグミが好きだ”)

metest

[[1]]
名詞 
“わたし”

[[2]]
助詞 
“は”

[[3]]
名詞 
“グミ”

[[4]]
助詞 
“が”

[[5]]
名詞 
“好き”

[[6]]
助動詞 
“だ”

この結果になります。しっかり単語ごとに分けてありますし、品詞名もついています。

RMeCabC文字列を形態素解析(単語に分けたり、品詞名をつける)する

リストの各要素にアクセス

上で表示された縦長の結果は、リスト形式となっています。

各要素にアクセス

metest[1]

[[1]]

名詞 

“わたし”

各要素にアクセス

metest[3]

[[1]]

名詞 

“グミ”

このように各要素にアクセスすることができます。

変数名[数字]数字で指定した要素を表示

リスト形式→ベクトル形式

先ほどの縦長に書かれたリスト形式のものを、ベクトル形式にしていきます。

理由として、ベクトル形式の方が見やすく、便利だからです。

リスト形式→ベクトル形式

metest1 <- unlist(metest)

metest1

  名詞  助詞  名詞  助詞  名詞  助動詞 

“わたし”  ”は”  ”グミ”  ”が”  ”好き”  ”だ”

この結果になります。

縦書きのリスト形式からベクトル形式になりました。

unlist()ベクトル形式にする

ベクトルの各要素にアクセス

リスト形式と同じように、ベクトル形式の要素にもアクセスできます。

ベクトル要素アクセス

metest1[1]

名詞
“わたし”

変数名[数字]数字で指定した要素を表示

品詞情報だけを表示

さきほどのやり方だと、品詞と単語が同時に表示されてしまいました。

品詞情報だけ取り出す方法もあります。

品詞情報のみ表示

names(metest1)

[1]”名詞” “助詞” “名詞” “助詞” “名詞” “助動詞”

names(変数名)品詞情報のみ表示

品詞情報の一部を表示

こちらも一部を取り出すことができます。

品詞情報の一部を表示

names(metest1[1])

[1] “名詞”

names(変数名[数字])品詞情報の数字で指定した部分を表示

まとめ:RMeCabCで形態素解析できる

まとめ

  • RMeCabCで
  • 単語ごとに分けられる
  • 品詞を表示することができる

▼ゼロから始めるR言語に戻る▼

あわせて読みたい
R言語
【随時更新】ゼロから始めるR言語【2018/3/30日更新】RとRStudioのインストールからグラフ・図・分析、テキストマイニング、スクレイピングなどをやっていきます。ネットでRを勉強したい人は是非ご覧ください。...

以上さぎのみや(@gumimomoko)でした。今日も分析しました。明日からも一生無双でやったりましょう。

ABOUT ME
さぎのみや
さぎのみや
「物事の本質を見抜く」をテーマに発信している19才の理系大学生ブロガー。「R」・「本」・「行動経済学」のことを中心に発信中。グミは100種類以上食べてきました。アイコンは可愛いですけど、男です。お仕事依頼はTwitterからお願いします。 →Polcaで応援Amazonほしいものリスト
ゲーム開発を手助けるメディア「Unishar-ユニシャー」
  • Unityを勉強したい
  • とりあえずUnityを使ってゲームを作りたい

このような悩みを解決してくれる、アクセス急上昇中のUnityメディア「Unishar-ユニシャー」

Unityでのゲーム開発に役立つことばかりです。

Unity専門メディア「Unishar-ユニシャー」→