LoginSignup
21
22

More than 5 years have passed since last update.

Python3でバスケット分析

Last updated at Posted at 2017-10-22

バスケット分析(basket analysis)

バスケット分析を使う機会があったので、Python3で簡単に実装したやり方をメモ。

バスケット分析は簡単に言えば「同じカゴに入れられる品物を見つける」ための手法。

pyfpgrowthを使えばすごく簡単

Code

basket_analysis.py
import pyfpgrowth

#5人分の買い物リストを作成。2とか3とかが商品。それぞれのリストが買い物カゴだと思って欲しい。
buy_list = [[2,3,4,13,11],\
            [16,3,4,7,14],\
            [9,3,4,1,18],\
            [7,12,11,13,3],\
            [8,3,5,17,20],\
            ]

#分析開始
patterns = pyfpgrowth.find_frequent_patterns(buy_list, 3)
rules = pyfpgrowth.generate_association_rules(patterns, 0.7)

print(patterns)
print(rules)

実行結果

{(3,): 5, (4,): 3, (3, 4): 3}
{(4,): ((3,), 1.0)}

ここで気になるのは引数の値。

find_frequent_patternsの3は出現回数を表してるっぽい。

(3,): 5 → 「3は5回登場してますよ」

(4,): 3 → 「4は3回登場してますよ」

(3, 4): 3 →「(3,4)のペアは3回登場してますよ」

generate_association_rulesの0.7は信頼度。

(4,): ((3,), 1.0) → 「4が来て3が来る信頼度は1.0ですよ」

21
22
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
21
22