アソシエーションルールの生成
ご覧のとおり、モジュール itertools の関数 permutations を使うと、前件1つ・後件1つのすべてのルール候補を手早く生成できます。もちろん、この中でどのルールが有用かはまだ分かりません。ここでは、どの組み合わせも2つのアイテムを結びつける有効な方法である、ということだけが分かっています。
それでは、食料品データセットの一部(coffee、tea、milk、sugar)について、すべてのルールを生成し、その数を数える練習をしましょう。
この演習はコースの一部です
Python で学ぶマーケットバスケット分析
演習の手順
permutations関数をインポートするようにimport文を完成させてください。groceriesリストからすべてのアソシエーションルールを生成します。- 生成したルールの集合を表示します。
- ルールの件数を表示します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Import permutations from the itertools module
from itertools import ____
# Define the set of groceries
flattened = [i for t in transactions for i in t]
groceries = list(set(flattened))
# Generate all possible rules from groceries list
rules = list(permutations(____, 2))
# Print the set of rules
print(____)
# Print the number of rules
print(____(rules))