Avancerad filtrering med flera mått
Tidigare använde vi data från en webbutik för nyhetsartiklar för att hitta antecedenter som kunde användas för att marknadsföra ett specifikt konsekvens. Eftersom mängden potentiella regler var stor behövde vi använda Apriori-algoritmen och filtrering med flera mått för att begränsa den. I den här övningen undersöker vi hela regeluppsättningen och identifierar en användbar regel, i stället för att rikta in oss på en specifik antecedent.
Observera att data har laddats, förbehandlats och one-hot-kodats, och finns tillgänglig som onehot. Dessutom har apriori() och association_rules() importerats från mlxtend. I den här övningen tillämpar du Apriori-algoritmen för att identifiera frekventa itemsets. Sedan hämtar du associationsreglerna från itemsets och tillämpar filtrering med flera mått.
Den här övningen är en del av kursen
Marknadskorgsanalys i Python
Övningsinstruktioner
- Tillämpa Apriori-algoritmen på de one-hot-kodade itemsets med ett minsta supporttröskelvärde på 0.001.
- Extrahera associationsregler med ett minsta supporttröskelvärde på 0.001.
- Ange
antecedent_supporttill 0.002 ochconsequent_supporttill 0.01. - Ange
confidencetill högre än 0.60 ochlifttill högre än 2.50.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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']])