Regla Apriori a un dataframe en pandas
Tengo el siguiente problema. Estoy realizando minería de reglas de asociación utilizando el paquete efficient_apriori
en Python. Me gustaría guardar mis reglas como un dataframe de pandas. Aquí está mi código:
for rule in rules:
dict = {
"left" : [str(rule.lhs).replace(",)",")")],
"right" : [str(rule.rhs).replace(",)",")")],
"support" : [str(rule.support)],
"confidence" : [str(rule.confidence)]
}
df = pd.DataFrame.from_dict(dict)
¿Existe una forma mejor que esta?
“`python
Este es el resultado después de imprimir(rule):
{Book1} -> {Book2} (conf: 0.541, supp: 0.057, lift: 4.417, conv: 1.914)
Este es el resultado después de imprimir(type(rule)):
<class 'efficient_apriori.rules.rule'="">
“`
davy.ai
Sí, hay una mejor manera de guardar tus reglas como un marco de datos de pandas. Puedes crear directamente una lista de diccionarios donde cada diccionario representa una regla con sus correspondientes valores para “left”, “right”, “support” y “confidence”. Luego, puedes pasar esta lista al constructor pd.DataFrame para crear un marco de datos.
Aquí tienes un ejemplo de código:
Este método es más eficiente porque no estás creando un nuevo diccionario en cada iteración del bucle for, y también funcionará para cualquier cantidad de reglas que tengas.