Interpretar resultados
Casi siempre es importante saber qué variables están influyendo más en tu predicción. ¿Quizá es contraintuitivo y eso ya es un insight? Puede que un puñado de variables expliquen la mayor parte de la precisión de tu modelo y no necesites invertir tiempo en obtener o preparar otras.
En este ejemplo veremos un modelo que se ha entrenado sin ninguna información de LISTPRICE. Con eso fuera, ¿qué influye más en el precio?
- NOTA: El array con las importancias de las variables,
importances, ya se ha creado por ti a partir demodel.featureImportances.toArray()
Este ejercicio forma parte del curso
Ingeniería de características con PySpark
Instrucciones del ejercicio
- Crea un dataframe de
pandasusando los valores deimportancesy pon como nombre de la columnaimportanceestableciendo el parámetrocolumns. - Con la lista importada de nombres de variables,
feature_cols, crea una nuevapandas.Seriesenvolviéndola con la funciónpd.Series(). Asígnala a la columnafi_df['feature']. - Ordena el dataframe usando
sort_values(), estableciendo el parámetrobya nuestra columnaimportancey ordénalo en orden descendente poniendoascendingenFalse. Revisa los resultados.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
# Convert feature importances to a pandas column
fi_df = pd.DataFrame(____, columns=[____])
# Convert list of feature names to pandas column
fi_df['feature'] = pd.____(____)
# Sort the data based on feature importance
fi_df.____(by=[____], ascending=____, inplace=True)
# Inspect Results
fi_df.head(10)