Aplicando a regra de Zhang
No Capítulo 2, vimos que a regra de Zhang é uma medida contínua de associação entre dois itens que assume valores no intervalo [-1,+1]. Um valor -1 indica uma associação perfeitamente negativa e um valor +1 indica uma associação perfeitamente positiva. Neste exercício, você vai determinar se a regra de Zhang pode ser usada para refinar um conjunto de regras que uma loja de presentes está usando para promover produtos.
Observe que os conjuntos frequentes já foram calculados e estão disponíveis como frequent_itemsets. Além disso, zhangs_rule() foi definida e association_rules() foi importada de mlxtend. Você começará recalculando o conjunto original de regras. Depois disso, aplicará a métrica de Zhang para selecionar apenas as regras com associação alta e positiva.
Este exercício faz parte do curso
Análise de Cesta de Compras em Python
Instruções do exercício
- Gere o conjunto de regras de associação com valor de lift de pelo menos 1.00.
- Defina o limite de suporte do antecedente como 0.005.
- Calcule a regra de Zhang e atribua a saída à coluna
zhangemrules. - Selecione as regras cujo valor da métrica de Zhang seja maior que 0.98.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Generate the initial set of rules using a minimum lift of 1.00
rules = association_rules(frequent_itemsets, metric = "____", min_threshold = ____)
# Set antecedent support to 0.005
rules = rules[rules['____'] > 0.005]
# Set consequent support to 0.005
rules = rules[rules['consequent support'] > 0.005]
# Compute Zhang's rule
rules['zhang'] = ____(____)
# Set the lower bound for Zhang's rule to 0.98
rules = rules[____['zhang'] > 0.98]
print(rules[['antecedents', 'consequents']])