Calcular la convicción con una función
Tras completar con éxito su proyecto piloto, la fundadora de la start-up de ebooks decide contratarte para un proyecto mucho mayor. Te pregunta si puedes calcular la convicción para cada par de libros del conjunto de datos goodreads-10k, para poder usar esa información y decidir qué libros colocar más cerca en la web.
Aceptas el trabajo, pero te das cuenta de que necesitas una forma más eficiente de calcular la convicción, ya que tendrás que hacerlo muchas veces. Decides escribir una función que la calcule. Recibirá como entrada dos columnas de un DataFrame de pandas, un antecedente y un consecuente, y devolverá la métrica de convicción. Ten en cuenta que 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
- Calcula el soporte del antecedente y asígnalo a
supportA. - Calcula el soporte de NOT consecuente.
- Calcula el soporte de antecedente y NOT consecuente.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
def conviction(antecedent, consequent):
# Compute support for antecedent AND consequent
supportAC = np.logical_and(antecedent, consequent).mean()
# Compute support for antecedent
supportA = ____.____()
# Compute support for NOT consequent
supportnC = 1.0 - ____.____()
# Compute support for antecedent and NOT consequent
supportAnC = ____ - supportAC
# Return conviction
return supportA * supportnC / supportAnC