Applicare la regola di Zhang
Nel Capitolo 2 abbiamo visto che la regola di Zhang è una misura continua di associazione tra due articoli, con valori nell'intervallo [-1,+1]. Un valore di -1 indica un'associazione perfettamente negativa, mentre +1 indica un'associazione perfettamente positiva. In questo esercizio verificherai se la regola di Zhang può essere usata per affinare un insieme di regole che un negozio di articoli regalo sta attualmente usando per promuovere i prodotti.
Nota che gli insiemi frequenti sono già stati calcolati e sono disponibili come frequent_itemsets. Inoltre, zhangs_rule() è stata definita e association_rules() è stata importata da mlxtend. Inizierai ricalcolando l'insieme originale di regole. Poi applicherai la metrica di Zhang per selezionare solo le regole con un'associazione elevata e positiva.
Questo esercizio fa parte del corso
Analisi del carrello in Python
Istruzioni dell'esercizio
- Genera l'insieme di regole di associazione con un valore di lift di almeno 1,00.
- Imposta la soglia di supporto degli antecedenti a 0,005.
- Calcola la regola di Zhang e assegna l'output alla colonna
zhanginrules. - Seleziona le regole con una metrica di Zhang maggiore di 0,98.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# 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']])