Zhang の指標を適用する
ebook スタートアップの創業者が、追加のコンサルティングを依頼してきました。調査中のアイテム集合のリストを送ってきたので、その中に相関が弱い(解離している)アイテムが含まれていないか判断してほしいとのことです。作業が終わったら、使用した指標を rules DataFrame(すでに用意されており、antecedents と consequents の列を含みます)に列として追加してほしいと依頼されています。
アイテム集合は itemsets というリストのリストとして与えられています。各リストは、先頭が前件、2番目が後件です。以前の演習で使った books DataFrame も利用できます。なお、Zhang の指標はすでに zhang() として定義済みです。また、pandas は pd、numpy は np として使用できます。
この演習はコースの一部です
Python で学ぶマーケットバスケット分析
演習の手順
itemsetsの各アイテム集合をループ処理します。- 各アイテム集合について、
booksから前件と後件の列を抽出します。 - 式を完成させ、
zhangs_metricリストに追加します。 - 各アイテム集合の指標を表示します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Define an empty list for Zhang's metric
zhangs_metric = []
# Loop over lists in itemsets
for itemset in ____:
# Extract the antecedent and consequent columns
antecedent = books[itemset[0]]
consequent = ____[itemset[1]]
# Complete Zhang's metric and append it to the list
zhangs_metric.append(zhang(____, ____))
# Print results
rules['zhang'] = zhangs_metric
print(rules)