プロが教える店舗&オフィスのセキュリティ対策術

テキストファイルの文字を読み取って、
出力回数の多い単語のトップ10を
表示するような、ソフトを探しています。
特定の文字列出力回数を出すのは、
簡単なのですが、不特定の文字列、
トップ10となるとなかなかありません。
フリーウェアであれば、なおうれしいです。
どうか、教えてください。

A 回答 (3件)

ズバリの回答でないので恐縮ですが、複数のプログラムを組み合わせればできると思います。



#1さんが仰るように日本語の文章をどうやって単語に分けるかが問題になります。それができるプログラムがあれば、後の処理は比較的簡単にできるでしょう。具体的には#2さんの回答にあるKAKASIや茶筌(ChaSen)というプログラムがよく使われているようです。実際、質問者さんが仰るようなソフトもいくつか公開されていますが、単語に分割する部分はKAKASIやChaSenを利用しているものが多いようです。

私自身興味があったので茶筌を試してみました(自分も使うのは初めてです)。使用したのはWindows用のコンソール版茶筌ver.2.3.3です。集計はExcelで行うと仮定して、「単語,品詞」というCSVの形式で出力しました。

まず次の文章をテキストファイル(test.txt)で保存します。
 瓜売りが瓜売りに来て瓜売り帰る瓜売りの声
コマンドプロンプトで次のコマンドを実行します。
 prompt> chasen.exe -F "%m,%H\n" test.txt
 瓜,名詞
 売り,名詞
 が,助詞
 瓜,名詞
 売り,名詞
 (以下省略)

こんな感じで単語と品詞がカンマで区切られて出力されますので、ファイルに出力すれば後はExcelで処理できます。

もっと簡単に結果表示までできるソフトもちょっと探してみました。しかし、導入にPerlやRubyが必要だったり、DBが必要だったりします。ちょっと試すには大掛かり過ぎるのと、質問者さんの環境に合うかわからないため、紹介しませんでした。

参考URL:http://chasen.naist.jp/hiki/ChaSen/
    • good
    • 0
この回答へのお礼

ありがとうございました。早速使ってみます。

お礼日時:2006/03/20 10:28

kakasiなどを上手く利用すればできそうですが。



http://d.hatena.ne.jp/keyword/kakasi
    • good
    • 0
この回答へのお礼

ありがとうございます。大変参考になりました。使えそうです。

お礼日時:2006/03/10 12:04

単語の区切りがないとアルゴリズム的には不可能です。



上記の文章も

単語 の 区切り が ない と アルゴリズム 的 には 不可能 です 。

とスペース区切りであるとか。
そのあたりは大丈夫ですか?
    • good
    • 0
この回答へのお礼

アドバイスありがとうございます。

お礼日時:2006/03/10 12:04

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!