アソシエーション分析(バスケット分析)
- アソシエーション分析実行用Rスクリプト
基本的にアソシエーション分析をするときは、データはlist型で定義したものを
トランザクション型に変換(as(リスト名, "transactions"))して使用するが、
外部データ(csvなど)から読み込むときは、自動的にdata.frame型になってしまう。
外部データからデータを読み込みたいときは、以下のように実行する。
今回使用しているデータは、
行:ID
列:メディア名
値:メディアへの接触フラグ
ただし、この形式でなくともアソシエーション分析はできる。
(※読み込み方は以下とは異なる)
が、実際この形式でデータ持ってることの方が多い気がする…
以下、実行用スクリプト。
# トランザクションクラスのデータを作成する
dat <- read.csv("アソシエーション分析用データ.csv", header=TRUE)
dat1 <- as.matrix(dat)
dat2 <- as(dat1, "transactions")# 各アイテムの頻度をプロットする
itemFrequencyPlot(dat2)# 相関関係を分析する
res <- apriori(dat2)# アソシエーションルールの数を出力する
print(res)
# アソシエーションルールのトップ20を表示する
inspect(head(SORT(res, by = "support"), n = 20))
参考
http://mjin.doshisha.ac.jp/R/40/40.html
Rによるアソシエーション分析 - Qiita
kkaneko.com
R言語による アソシエーション分析-組合せ・事象の規則を解明する-(第5回R勉強会@東京)