igraphというパッケージを使って、「風の又三郎」のbi-gramを図にしてみましょう。例によって、「風の又三郎」のテキストファイルがフォルダNORUBYの中にあるものとします。ない、という方は、前回までの「Rあれこれ」を参照して下さい。
で、まず、「風の又三郎」を読み込んで、bi-gramを求めます。ただし、今回は形容詞も含めることにします。
> library(RMeCab)
> ngr2 <- NgramDF("NORUBY/kazeno_matasaburo2.txt", type = 1, pos = c("名詞","形容詞") )
file = NORUBY/kazeno_matasaburo2.txt Ngram = 2
> head(ngr2)
Ngram1 Ngram2 Freq
1 あい あいだ 1
2 あい そこ 1
3 あい づあ 1
4 あい づやっぱり 1
5 あい 一郎 1
6 あい 嘉助 1
>
次に、igraphパッケージを読み込みます。igraphは、インタラクティブにグラフを操作する機能を持つ関数群です。グラフに表示するとき、数が多いとゴチャゴチャするので、まず、bi-gramの頻度が3以上のものを抽出します。で、データフレーム形式をネットワークグラフを扱う形式に変換します。
> library(igraph)
> ngr2limit <- ngr2[ngr2[,3] > 2 , ]
> bigraph<-graph_from_data_frame(ngr2limit)
> tkplot(bigraph, vertex.color = "Yellow", vertex.size = 20)
[1] 4
>
このtkplotというのを実行すると、別画面にグラフが表示されるでしょう。表示が偏っている場合は、ポップアップした別画面のメニューでView > Fit to screenとやると、画面全体に表示されます。このグラフでは、名詞や形容詞の関係を矢印で示しています。
0 件のコメント:
コメントを投稿