Aplicar la métrica de Zhang
La fundadora de la start-up de ebooks ha vuelto para pedir más servicios de consultoría. Te ha enviado una lista de itemsets que está investigando y te ha pedido que determines si alguno de ellos contiene elementos que estén disociados. Cuando termines, te ha pedido que añadas la métrica que uses como una columna en el DataFrame rules, que tienes disponible y que actualmente contiene columnas para antecedents y consequents.
Los itemsets están disponibles como una lista de listas llamada itemsets. Cada lista contiene primero el antecedente y segundo el consecuente. También tienes acceso al DataFrame books de ejercicios anteriores. Ten en cuenta que la métrica de Zhang ya está definida y disponible como zhang(). Además, pandas está disponible como pd y numpy como np.
Este ejercicio forma parte del curso
Análisis de cesta de la compra en Python
Instrucciones del ejercicio
- Itera sobre cada itemset en
itemsets. - Extrae las columnas de antecedente y consecuente de
bookspara cada itemset. - Completa la instrucción y añádela a la lista
zhangs_metric. - Imprime la métrica para cada itemset.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
# 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)