アソシエーション分析(再び)-3
アソシエーション分析用のテキストデータをKHcoderの共起ネットワークで表現すると、いい感じのネットワーク図を描くことができる!と思ったら、案外だった。
KHcoderでアソシエーション用のデータを使用する
結論
結論から申し上げると、はっきりとした結果がでません。
そもそも、はっきりした結果がでないデータ内容である可能性があります。
もうひとつ考えることができる理由は・・・
"青物","果物","精肉","豆腐","漬物.味噌.納豆","一般食品","乳飲料","パン" "青物","果物","精肉","豆腐","一般食品","乳飲料","パン" "青物","果物","精肉","豆腐","漬物.味噌.納豆","一般食品","乳飲料","パン" "青物","果物","精肉","豆腐","漬物.味噌.納豆","一般食品","乳飲料","パン" "青物","精肉","豆腐","乳飲料","パン"
トランザクション形式データでは、「語」が1行(KHcoderでが1段)ごとに1回しか出現しないわけです。
"青物","青物","青物","青物","青物","果物","果物","果物","果物","果物","精肉" "青物","青物","豆腐" "一般食品","一般食品","一般食品","漬物.味噌.納豆","乳飲料","パン"
実際のバスケットには同じ「語」が複数回入っているので、このようなデータであれば、もう少しはっきりするのか?・・・と思うわけです。
アソシエーション分析(再び)-1からの続き
① こちらのテキストファイルを以下のコマンドをRへ入力して処理します。
#データ読込 d<- read.table("ファイルパス",sep=",",fileEncoding="cp932",header=TRUE, na.strings="0", dec=".", strip.white=TRUE) #NAを0に変換 d[is.na(d)]<-0 #バスケット番号の列は使用しないので削除 d1<-d[,-1] #arulesを呼び出し、ない場合はパッケージをインストールしてください library(arules) #transactionsへ変換 d1<- as(as.matrix(d1),"transactions")
上記のRコマンドは、アソシエーション分析(再び)-1で解説した、クロス集計形式データをトランザクション形式データへ変換したところまでの内容です。
14行目のRコマンド「d1」がトランザクション形式へ変換したデータです。
データ出力
② Rからトランザクション形式のデータ(d1)を出力します。(アソシエーション分析まえのデータ)
・「ディレクトリ名」の部分を出力ファイルをご自身のパソコンの保存するディレクトリ名(例 C:/data)へ書き換えてください。
・「ファイル名」この部分を出力ファイル名(例 association_transactions.txt)へ書き換えます。拡張子は.txtにしてください。
#トランザクション形式のデータ「d1」をテキストファイルで出力します。 write(d1,sep=',','ディレクトリ/ファイル名.txt')
Rへトランザクション形式データを出力するコマンドを入力します。
指定したディレクトリへ、指定したファイル名(例:associastion_transactions.txt)のテキストファイルデータが出力されていれば完成です。
KHcoder 新規プロジェクト
KHcoderを新規プロジェクトで起動します。
・分析対象テキストはRから出力したトランザクション形式データのテキストファイルです。
>出力データはこちら
アイスクリーム お茶 お米 パン 一般食品 果物 菓子 玉子 鶏加工品 寿司 精肉 青物 鮮魚.塩干 惣菜 漬物.味噌.納豆 豆腐 乳飲料 麺 冷食 練物
・「前処理」→「語の取捨選択」
・上記の20「語」をコピペします。
・前処理を実行します。
・「ツール」→「抽出語」→「抽出語リスト」
「語の取捨選択」で指定した20「語」が抽出できていればOKです。
共起ネットワーク
・「ツール」→「抽出語」→「共起ネットワーク」
・すべての関係を見たいので「係数」のラジオボタンを押して「0」を入力します。
・「強い共起関係ほど濃い線に」「係数を表示」「相関のカラー表示」をチェックします。
画像のような結果になります。
・「調整」をクリック
・「最小スパニング・ツリーだけを描画」→「OK」
はっきりしません。