アソシエーションルールの生成
前のセクションの最後の演習では、ノベルティギフト店のオーナー向けに Apriori アルゴリズムを使ってアイテム集合を計算しました。support を 0.005 から 0.003 に緩めると、アイテム集合の数が 9 から 91 に増えたことをオーナーに伝えました。さらに 0.001 に緩めると、数は 429 に増えました。これまでの記述的な分析に満足した店舗マネージャーは、計算した2つの頻出アイテム集合から、いくつかのアソシエーションルールを特定してほしいと依頼してきました。
なお、pandas は pd としてインポート済みで、2つの頻出アイテム集合は frequent_itemset_1 と frequent_itemset_2 として利用できます。目標は、これらのアイテム集合から抽出できるアソシエーションルールを特定することです。
この演習はコースの一部です
Python で学ぶマーケットバスケット分析
演習の手順
aprioriの結果からアソシエーションルールを計算するmlxtendのアルゴリズムをインポートします。- 指標に support を用い、しきい値を 0.0015 にして、
frequent_itemsets_1のアソシエーションルールを計算する文を完成させてください。 - 指標に support を用い、しきい値を 0.0015 にして、
frequent_itemsets_2のアソシエーションルールを計算する文を完成させてください。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Import the association rule function from mlxtend
from mlxtend.____ import ____
# Compute all association rules for frequent_itemsets_1
rules_1 = association_rules(frequent_itemsets_1,
metric = "____",
min_threshold = ____)
# Compute all association rules for frequent_itemsets_2
rules_2 = association_rules(frequent_itemsets_2,
metric = ____,
____)
# Print the number of association rules generated
print(len(rules_1), len(rules_2))