[掲示板へもどる]
一括表示

  [No.551] 単語と単語の組合せ 投稿者:末田  投稿日:2009/12/04(Fri) 19:53:19

研究の中で、テキストデータからキーワードを抽出する際に、KH Coder を使用させて頂いています。


ある文章の段落における「単語×単語」の頻出度の高いものを抽出できればと考えております。「共起ネットワーク」がそのような仕組みだと解釈しているのですが、頻出の組合せだけをエクセル等で出力できるような仕組みはないでしょうか?
ある単語についての共起語ではなく、単純に頻出の組合せだけを知りたいのですが、良い方法があれば、宜しくお願いします。


専門の知識がないので、非常に初歩的な質問かもしれませんが、宜しくお願いします。


  [No.552] Re: 単語と単語の組合せ 投稿者:HIGUCHI Koichi  投稿日:2009/12/05(Sat) 00:25:14
Re: 単語と単語の組合せ (画像サイズ: 1111×644 39kB)

こんにちは、樋口です。書き込みありがとうございます。

「関連語探索」コマンドでは、特定の語を指定して、その語と共起している語
を検索することになります。そうではなくて、共起の程度が強い語のペアを、
(共起の程度が強い順に)ざっと眺めたいということでしょうか?

そういうことでしたら、あいにくとKH Coderのコマンドとしては機能が準備さ
れていません。ただし、以下のような手間をかけていただけましたら、一応実
現は可能です。

(1)まず共起ネットワークを作成します。お察しの通り、共起ネットワークで
は、共起の程度が強い順に(デフォルトでは)60ペアを描画します。これらの
ペアを図で表示させるのではなく、テキスト形式で表示/保存させれば良いわ
けです。

(2)共起ネットワークを作成したら、「保存」をクリックして「R Source」形
式で保存します。
ご参考: http://khc.sourceforge.net/scr_r.html#using_plots

(3)そしてKH Coderに付属のRを起動します。kh_coder.exeがある場所からみて
dep\R\bin\Rgui.exeをダブルクリックして下さい。

(4)Rが起動したら「R Console」という部分に(2)で保存したファイルをドラッ
グ&ドロップします。これによってRコマンドが実行され、R上で共起ネットワ
ークが作成されます。

(5) 以下のコマンドを実行(R Consoleにコピー&ペーストしてエンター・キー
をクリック)すれば、共起の程度が強い順に、共起語のペアが60件表示されま
す(添付画像)。デフォルトでは60件ですが、(1)の共起ネットワーク作成時
に「描画する共起関係」として指定したのと同じ件数が表示されます。

----------------------------------------------------------------------
ep <- data.frame( 
    n1     = colnames(d)[ as.numeric( get.edgelist(n2,name=T)[,1] ) ],
    n2     = colnames(d)[ as.numeric( get.edgelist(n2,name=T)[,2] ) ],
    weight = get.edge.attribute(n2, "weight"),
    stringsAsFactors = FALSE )
 
ep <- ep[ sort.list(ep$weight, decreasing=TRUE), ]
rownames(ep) <- c(1:nrow(ep))
ep
----------------------------------------------------------------------
なお表示されている共起の程度(weight)は、Jaccardの類似性測度です。

(6) 必要であれば、以下のコマンドを実行することで表示内容をc:\temp.csv
というファイルに保存できます。保存されたCSVファイルをダブルクリックす
れば、Excelでデータを開くことができます。なお、Cドライブ直下への書き込
み権限が無い場合は、他の場所を指定して下さい。

----------------------------------------------------------------------
write.table(ep, "c:/temp.csv", quote=F, append=F, sep=",")
----------------------------------------------------------------------

手順は以上なのですが、難しそうに見えますでしょうか。もし操作が上手く行
かなかった場合、「どこで詰まった」といったことを書き込んでいただければ、
また説明を追加させていただきます。

それではよろしくお願いいたします。

p.s.
上記の他にも、「文書 x 抽出語」表の出力を行って、出力されたデータをRや
SPSSで処理するという方法もあります。共起の程度の測り方を、いろいろ試し
てみたいといった場合には、「文書 x 抽出語」表を使われた方がよいかもし
れません。