Filtragem avançada com múltiplas métricas
Anteriormente, usamos dados de uma loja online de presentes criativos para encontrar antecedentes que pudessem ser usados para promover um consequente específico. Como o conjunto de regras potenciais era grande, tivemos que recorrer ao algoritmo Apriori e à filtragem por múltiplas métricas para reduzi-lo. Neste exercício, vamos analisar o conjunto completo de regras e encontrar uma regra útil, em vez de mirar um antecedente específico.
Observe que os dados foram carregados, pré-processados e codificados em one-hot, e estão disponíveis como onehot. Além disso, apriori() e association_rules() foram importadas de mlxtend. Neste exercício, você aplicará o algoritmo Apriori para identificar conjuntos frequentes de itens. Em seguida, você recuperará o conjunto de regras de associação a partir desses conjuntos e aplicará filtragem por múltiplas métricas.
Este exercício faz parte do curso
Análise de Cesta de Compras em Python
Instruções do exercício
- Aplique o algoritmo Apriori aos itemsets codificados em one-hot com um limite mínimo de suporte de 0,001.
- Extraia as regras de associação usando um limite mínimo de suporte de 0,001.
- Defina
antecedent_supportem 0,002 econsequent_supportem 0,01. - Defina
confidencecomo maior que 0,60 eliftcomo maior que 2,50.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Apply the Apriori algorithm with a minimum support threshold of 0.001
frequent_itemsets = ____(onehot, min_support = ____, use_colnames = True)
# Recover association rules using a minium support threshold of 0.001
rules = ____(frequent_itemsets, metric = '____', min_threshold = 0.001)
# Apply a 0.002 antecedent support threshold, 0.60 confidence threshold, and 2.50 lift threshold
filtered_rules = rules[(rules['antecedent support'] > ____) &
(____['consequent support'] > 0.01) &
(rules['____'] > ____) &
(____ > 2.50)]
# Print remaining rule
print(filtered_rules[['antecedents','consequents']])