应用 Zhang 指标
这家电子书初创公司的创始人又来寻求咨询。她发给您一份她正在研究的项集列表,并请您判断这些项集中是否存在彼此"分离"的商品。完成后,她还希望您把所用的指标添加为一列,写入已提供给您的 rules DataFrame。该表目前包含 antecedents 和 consequents 两列。
这些项集以名为 itemsets 的列表(嵌套列表)提供。每个子列表包含两个元素:第 1 个是前件,第 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)