¿Tiene Python una función para dibujar matrices de confusión y cómo implementarla?
""Matriz de confusión de la trama""
importación?matplotlib.pyplot?as?plt
de?sklearn.metrics?import?confusion_matrix
def?confusion_matrix_plot_matplotlib(y_truth,?y_predict,?cmap=plt.cm.Blues):
"""Trama de Matplotlib de matriz de confusión
parámetros
----------
y_truth:?El valor de verdad de y, matriz 1d
y_predict:?Valor previsto de y,?1d?array
cmap:?Estilo de color para dibujar un diagrama de matriz de confusión?Utilice cm.Blues, consulte el sitio web oficial para obtener más estilos p>
"""
cm?=?confusion_matrix(y_truth,?y_predict)
plt.matshow(cm,?cmap=cmap)?#?Diagrama de matriz de confusión
plt.colorbar()?#colorbar
para?x?in?range(len(cm)):?#?etiqueta de datos
para? y?en?rango(len(cm)):
plt.annotate(cm[x,?y],?xy=(x,?y),?horizontalalignment='center',?verticalalignment =' centro')
plt.ylabel('¿Verdadero?etiqueta')?#?Etiqueta del eje
plt.xlabel('¿Predicho?etiqueta')?#?Etiqueta del eje
plt.show()?#?Mostrar resultados del dibujo
if?__name__?__main__':
y_truth?[1,?0,?1,? 1,?1,?1,?1,?1,?1,?1,?0,?0,?0,?0,?0]
y_predict?=?[1,? 0,?0,?1,?0,?1,?1,?1,?1,?0,?1,?0,?1,?0]
confusion_matrix_plot_matplotlib(y_truth,? y_predict)
y_predict?