開始使用免費開始

以 lift 進行修剪

你再次向新奇禮品店的店長回報。這次你告訴她,當你在 Apriori 演算法中使用較高的 support 門檻時沒有找出任何規則,而使用較低門檻時只找到了 2 條規則。她肯定你的成果,但也請你考慮用另一個衡量指標,把 2 條規則進一步縮減為 1 條。

你記得 lift 的詮釋很直觀:值大於 1 代表品項在交易中同時出現的頻率,比在獨立分佈下所預期的還要高。你決定使用 lift,因為這樣的說明容易傳達。注意,pandas 已以 pd 名稱可用,且已提供獨熱編碼的交易資料 onehot。另外,apriori 已從 mlxtend 匯入。

本練習屬於課程

Python 的 Market Basket Analysis

檢視課程

練習說明

  • mlxtend 匯入 association_rules 函式。
  • 使用 support 為 0.001、最大項目集長度為 2 來計算頻繁項目集。
  • 完成程式,使其只保留 lift 至少為 1.0 的規則。
  • 列印該規則的 DataFrame。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Import the association rules function
from mlxtend.____ import ____

# Compute frequent itemsets using the Apriori algorithm
frequent_itemsets = apriori(onehot, min_support = ____, 
                            max_len = ____, use_colnames = True)

# Compute all association rules for frequent_itemsets
rules = association_rules(frequent_itemsets, 
                            metric = "____", 
                         	min_threshold = ____)

# Print association rules
print(____)
編輯並執行程式碼