Translate

Post Date:2009年12月4日 

簡単テキストマイニング ExcelでKWIC (その2)

ExcelでKWICを実現する「簡単テキストマイニング ExcelでKWIC」の続きです。
KWICとは、KeyWord In Context の略で、キーワード前後の文章を抽出する技術です。

Excel KWIC

A B C D E F G
1 キーワード KWIC
2 文字数 20
3 出現位置 2
4
5 出現頻度 1st 2nd Befor KWD KWD After KWD 検索対象文章
6 2 1 51 キーワード前後の文章を抽出する技術です。 KWIC によって文脈を簡単に理解することができま KWICとは、KeyWord In Context の略で、キーワード前後の文章を抽出する技術です。KWICによって文脈を簡単に理解することができます。

前回は、A6セルのキーワードの出現頻度までだったので、今回はキーワードの出現位置からになります。

B6はキーワードが最初に出現する位置で、C6が2番目に出現する位置になります。ここで求めたキーワード開始位置を使ってD6、F6でキーワード前後の文章を表示します。

指定した文字列が出現する位置を求めるには、Excelのfind()を利用します。

B6セルの説明

B1で指定したキーワードがG6の中で最初に出現する開始位置です。検索開始は1文字目からです。
=find($B$1,G6,1)

上記だとB1に指定したキーワードがG6で出現しない場合にエラー(#VALUE!)となりますので、iferror()関数を使って、キーワード存在しない場合に"-"を表記させます。

=iferror(find($B$1,G6,1),"-")

C6セルの説明

B1で指定したキーワードがG6の中で2番目に出現する開始位置です。言い換えると最初にキーワードが出現した以降で、次に最初に出現する位置となります。

最初に来ワードが出現した位置はB6です。しかし、

=find($B$1,G6,B6) ・・・① 1文字目から検索

と記載するとB6の位置からキーワードが始まっているので、B6と同じ結果になってしまいます。B6の位置から+1する必要があります。若しくは厳密にキーワードの長さ分を加算します。

=find($B$1,G6,B6+1) ・・・② 1+1=2文字目から検索
=find($B$1,G6,B6+len($B$1) ・・・③ 1+4=5文字目から検索

可視化するとこんな感じです。
K W I C

そしてエラーの場合には”-“を表示するという処理を付け加えると下記のようになります。

=iferror(find($B$1,G6,B6+len($B$1)),"-")

次に本題のキーワード前後の文章の表示です。キーワード後の方が簡単なので先にF6セルの説明をします。

F6セルの説明

文字列の一部を切り取るには、mid(文字列,開始位置,文字数)関数を使用します。

A B C
1 アオリイカ、コウイカ、カミナリイカ、ジンドウイカ、ミミイカ
2
3

上記のA1セルの中で"コウイカ"は、7文字目から始まり、4文字です。

Excelで表記すると、下記のようになります。

キーワード後の文字列を切り出すためにも、このmid()関数を使用します。キーワードの直後からB2セルで指定した分だけG6から切り出します。切り出し開始位置は、1番目のキーワードであれば、B6にキーワードの長さを加算した、1+4=5文字目になります。

=mid(G6,B6+len($B$1),$B$2)

2番目の出現位置からは

=mid(G6,C6+len($B$1),$B$2)

となります。

ここからが小技です。今回の仕様では、B3に"1"か"2"と入れることによって、キーワードの出現位置が1番目か、2番目かを選択できるようにしています。これをindex()関数を使って実現しています。

A B C D E
1 アオリイカ コウイカ カミナリイカ ジンドウイカ ミミイカ
2
3

=index(A1:E1,2)

とすると、A1:E1までの中で2番目の内容が返ってくるので「コウイカ」となります。

=index(A1:E1,5)

は、ミミイカです。

Excel KWICでは、

=index(B6:C6,$B$3)

で、B3セルに指定したn番目のキーワード開始位置を求めることができます。

=mid(G6,index(B6:C6,$B$3)+len($B$1),$B$2)

これにエラーの場合は、何も表示しないという処理を加えると

=iferror(mid(G6,index(B6:C6,$B$3)+len($B$1),$B$2),"")

となります。





Post Date:2009年12月1日 

簡単テキストマイニング ExcelでKWIC

KWICとは、KeyWord In Context の略で、キーワード前後の文章を抽出する技術です。KWICによって文脈を簡単に理解することができます。これはテキストマイニングの技術としてだけではなく、Yahoo!やGoogleなどの検索結果にも利用されています。例えば下記はGoogleで"NPSとは"で検索した結果になります。
2008年7月19日 ... そして、推奨者から批判者の比率を減算したものが、ネットプロモータースコアー(NPS)です。つまり、30%が推奨者で、20%が批判者であれば、NPSは10%となります。もし推奨者が20%で批判者が30%であれば、NPSは-10%となります。 ...
このようにキーワードを中心とした文章が掲載されていると全体を読まなくとも指定したキーワード(特定の語彙)がどのように使われているかを理解することができます。KWICを使った検索機能は、日本語では難しい係受け分析を使用するよりも、キーワード(特定の語彙)の使われ方を知る有効な手段です。但し、KWICでは、「パンが美味しい」と記載されている文章は5件というような定量的表記はできません。

EXCELでKWIC

以前、紹介したTTM: Tiny Text Minerでは、このKWICの機能を有していません。それを補う場合にEXCELで簡易的にKWICを実行してみましょう。

EXCEL KWICの完成形は下記のようになりますが、キーワードが複数回出現する文章の対応がいまひとつです。時間があれば今度はVBAで作成してみようと思います。

A B C D E F G
1 キーワード KWIC
2 文字数 20
3 出現位置 2
4
5 出現頻度 1st 2nd Befor KWD KWD After KWD 検索対象文章
6 2 1 51 キーワード前後の文章を抽出する技術です。 KWIC によって文脈を簡単に理解することができま KWICとは、KeyWord In Context の略で、キーワード前後の文章を抽出する技術です。KWICによって文脈を簡単に理解することができます。

項目説明:

入力項目

B1 検索対象とするキーワードを入力します
B2 キーワード前後の表示する文字数を指定します
B3 何番目に出現するキーワードを対象とするかを入力します
G6 検索対象とする文章

出力項目

A6 B1で入力したキーワードがG6の文章の中に何回出現するかを表示します
B6 G6の文章の中でB1で指定したキーワードが最初に出現する位置を表示します
C6 G6の文章の中でB1で指定したキーワードが2番目に出現する位置を表示します
D6 B2で指定した文字数分、キーワード前の文章を表示します
E6 B1で指定したキーワードを表示します
F6 B2で指定した文字数分、キーワード後の文章を表示します

では、順次説明をしていきます。

キーワードの出現頻度:

今回のEXCEL KWICでは、複数回出現するキーワードの対応ができていません。しかし冗長的な表現となっていますが、出現頻度が2回以下であれば、2回目に出現する位置でのKWIC表記は対応しています。出現頻度が多いキーワードは、別な工夫が必要となるので、先ずは文章内でのキーワードの出現頻度を求めます。

Excelでは、指定した文字をカウントしてくれるような関数が提供されていないので、文字列の出現頻度を求めるには工夫が必要です。そのため対象文章からカウントしたい文字列を削除して、その差分をカウントしたい文字列の長さで除算して求めます。

=(元の文章の長さ-元の文章から文字列を削除した長さ)/文字列の長さ

A B C
1 アオリイカ、コウイカ、カミナリイカ、ジンドウイカ、ミミイカ
2
3

上記で"イカ"が何回出現するかをカウントするためには、

1)文章の長さを求める
=len(A1)
結果:29

2)カウントしたい文字列を削除した文章を作成する
=substitute(A1,"イカ","")
結果:アオリ、コウ、カミナリ、ジンドウ、ミミ

3)カウントしたい文字列を削除した文章の長さ
=len(substitute(A1,"イカ",""))
結果:19

4)元の文章と文字列を削除した文章の差
=len(A1)-len(substitute(A1,"イカ",""))
結果:29-10=10

5)カウントしたい文字列の長さ
=len("イカ")
結果:2

6)出現頻度を求める
=(len(A1)-len(substitute(A1,"イカ","")))/len("イカ")
結果:(29-19)/2=5

これで"イカ"の出現頻度5回を求めることができます。

余談となりますが、この方法を用いると例文のように区切り文字で文字列が連続している場合に何個の文字列があるかも求めることができます。

=(len(A1)-len(substitute(A1,"、","")))+1

区切り文字"、"の個数+1が文字列の個数になるというわけです。

Excel KWICのA6のセルは、
=(len(G6)-len(substitute(G6,$B$1,"")))/len($B$1)
と記載します。

と、いうことで今回はここまで。
続きは次回以降に書きます。






Post Date:2009年11月28日 

GoodReaderでYouTubeの動画をダウンロード


GoodReader (large PDF viewer) - read big PDF files with reflow
Good.iWare Ltd.


GoodReaderは、iPhone/iPod TouchでPDFを閲覧するための非常に優れたアプリケーションです。
私自身も友人に勧められ購入しました。GoodReaderの使用方法については、ググれば色々な方が掲載していますが、GoodReaderには、高速PDFビューワーの機能以外にYouTubeの動画を高画質で保存することができます。

iPhone/iPod Touchでは、モバイル版YouTubeにアクセスするので、動画の解像度が悪いのと、 3G回線では、動画再生が途切れてしまうことも多いです。

PCを必要としないので、時間があるときにダウンロードをして後でゆっくり見るという使い方には適しています。

GoodReaderでYouTube動画をダウンロードする方法を以下に説明します。

対象動画のURLを取得

iPhone/iPod TouchのsafariでYouTubeにアクセスします。
※iPhoneからのアクセスはモバイル版YouTube(http://m.youtube.com/)となります。

YouTubeの中で対象の動画を検索し、safariに表示されているURL(モバイル板)をコピーします。

左記は、YouTubeの公式チャンネルを保有するアングリングソフトの「タコエギングをやってみよう!」です。

【iPhoneで取得したURL】
http://m.youtube.com/index?desktop_uri=%2F%3Fv%3D16YmMpc1yA8&v=
16YmMpc1yA8&gl=JP#/watch?v=9dTzIWJ0-FA&client=mv-google





DL用URLに変換

上記で取得したURLをメモアプリケーションなどにコピペしてください。

/index?から/watch?の手前までを削除


【削除前】
http://m.youtube.com/index?desktop_uri=%2F%3Fv%3D16YmMpc1yA8&v=16YmMpc1yA8&gl=JP#/watch?v=9dTzIWJ0-FA&client=mv-google

※赤字が削除対象部分

【削除後】
http://m.youtube.com/watch?v=9dTzIWJ0-FA&client=mv-google

m.youtube.comをwww.youtubesnips.comに置換


【置換前】
http://m.youtube.com/watch?v=9dTzIWJ0-FA&client=mv-google

※緑字が置換対象部分

【置換後】
http://www.youtubesnips.com/watch?v=9dTzIWJ0-FA&client=mv-google

これでURLの変換は完了デス。このURLをコピーします。

GoodReader WEB Downloads にURLをコピー&ペースト

GoodReaderを起動して、Web Downloadsを選択し、次にBrowse the WEBを選択します。
Brower the WEB上部のURL表示欄に変換したURLをペーストし、GOで実行します。

※ 下段左がURLペースト、右が実行後に表示された画面



ファイルのダウンロード(保存)


左記は、拡大表示している状態ですが、

・FLV Download
・3GP Download
・MP4 High Quality Download

というリンクがあるので「MP4 High Quality Download」をクリックします。MP4 High Quality は、高画質でファイルサイズが大きいので、iPhone 3G回線では結構時間がかかります。

WiFi環境に接続できる場所であればWiFiに接続してからDLすることをオススメします。








ダウンロード開始

MP4 High Quality Downloadをクリックすると下記の2回、コンファメーション(確認)がありますので、それぞれ、「Download Linked File」「Go there」を選択してください。ダウンロードが開始されます。



ダウンロードなう。


ダウンロードした動画の閲覧

ダウンロードが完了すると、My Documentsに格納されます。クリックすれば動画をみることができます。デフォルトのファイル名はVideo+番号なので、My Documents上部右側にあるActionでファイル名を変更すると便利です。

















象と散歩:人気の投稿(過去7日間)