アソシエーション分析で分析してみる

株価予測についてはアイデアがないので取り合えずアソシエーション分析の勉強。
アソシエーション分析はバスケット分析とも呼ばれて有名なのがオムツを買う人はビールも一緒に買う人が多いといった一見想像だにしなかったような傾向を見つけられたりします。
ってな訳で早速Pythonで実装してみました。
今回はタイタニック号の乗員のデータを用いて分析してみます。。
データの内容はこんな感じです。ざっと2201名分のデータです。

1 1等乗客 大人 男性 生還
2 1等乗客 大人 男性 生還
3 1等乗客 大人 男性 生還
134 1等乗客 大人 男性 死亡
135 1等乗客 大人 男性 死亡
1281 3等乗客 子供 男性 生還
1282 3等乗客 子供 男性 死亡
1283 3等乗客 子供 男性 死亡
2200 乗務員 大人 男性 死亡
2201 乗務員 大人 男性 死亡

ここで支持度と確信度の説明をしなければならないのですが
まず確信度とは パン -> 牛乳 の例でいくとパンを買う人が牛乳も買う確率をいいます。
この確信度が高いほど互いに関連していると言えます。
また支持度とはこのタイタニックの例でいくと1等乗客の子供のデータは
全体で 6 / 2201名しかなく非常に稀なケースであり確信度が高くても無駄なことが多いということです。
微妙に解説が違うと思いますがとりあえず実行結果。

男性 ---> 死亡 [支持度:0.786461 確信度:0.787984]
男性 ---> 大人 [支持度:0.786461 確信度:0.963027]
男性 ---> 大人 死亡 [支持度:0.786461 確信度:0.767764]
男性 乗務員  ---> 死亡 [支持度:0.391640 確信度:0.777262]
男性 乗務員  ---> 大人 [支持度:0.391640 確信度:1.000000]
男性 乗務員  ---> 大人 死亡 [支持度:0.391640 確信度:0.777262]
大人 乗務員  ---> 死亡 [支持度:0.402090 確信度:0.760452]
大人 乗務員  ---> 男性 [支持度:0.402090 確信度:0.974011]
大人 乗務員  ---> 男性 死亡 [支持度:0.402090 確信度:0.757062]
死亡 乗務員  ---> 男性 大人 [支持度:0.305770 確信度:0.995542]
死亡 乗務員  ---> 大人 [支持度:0.305770 確信度:1.000000]
死亡 乗務員  ---> 男性 [支持度:0.305770 確信度:0.995542]
男性 大人 乗務員  ---> 死亡 [支持度:0.391640 確信度:0.777262]
男性 死亡 乗務員  ---> 大人 [支持度:0.304407 確信度:1.000000]
男性 大人  ---> 死亡 [支持度:0.757383 確信度:0.797241]
大人 ---> 死亡 [支持度:0.950477 確信度:0.687380]
大人 ---> 男性 [支持度:0.950477 確信度:0.796845]
大人 ---> 男性 死亡 [支持度:0.950477 確信度:0.635277]
男性 死亡  ---> 大人 [支持度:0.619718 確信度:0.974340]
死亡 ---> 男性 大人 [支持度:0.676965 確信度:0.891946]
死亡 ---> 大人 [支持度:0.676965 確信度:0.965101]
死亡 ---> 男性 [支持度:0.676965 確信度:0.915436]
3等乗客 ---> 男性 [支持度:0.320763 確信度:0.722380]
3等乗客 ---> 男性 大人 [支持度:0.320763 確信度:0.654391]
3等乗客 ---> 大人 死亡 [支持度:0.320763 確信度:0.674221]
3等乗客 ---> 死亡 [支持度:0.320763 確信度:0.747875]
3等乗客 ---> 大人 [支持度:0.320763 確信度:0.888102]
大人 死亡  ---> 男性 [支持度:0.653339 確信度:0.924200]

以上のルールが抽出できました。
例えば 大人 死亡 ---> 男性 [支持度:0.653339 確信度:0.924200] のルールから
「大人であり、かつ死亡している」ならば「男性」である確率が92.42%であることが分かります。
このことからタイタニック号では女性が優先的に救出されたことが考察できます。
最小支持度、最小確信度を小さくすればもっと大量のルールが抽出できるのですが役に立たないルールは省くという意味で制限してあります。
たいていが分析しなくても分かるような結果なんですが結構面白かったです。