from sklearn.metrics import accuracy_score, recall_score, precision_score, f1_score
print('-'*50)
print('DecisionTreeClassifier')
print(f'Precisão: {precision_score(y_validacao, y_previsto_dtc)}')
print(f'Recall: {recall_score(y_validacao, y_previsto_dtc)}')
print(f'F1-Score: {f1_score(y_validacao, y_previsto_dtc)}')
print(f'Acuráricia: {accuracy_score(y_validacao, y_previsto_dtc)}')
print('-'*50)
print('Dummy')
print(f'Precisão: {precision_score(y_validacao, y_previsto_dummy)}')
print(f'Recall: {recall_score(y_validacao, y_previsto_dummy)}')
print(f'F1-Score: {f1_score(y_validacao, y_previsto_dummy)}')
print(f'Acuráricia: {accuracy_score(y_validacao, y_previsto_dummy)}')
print('-'*50)
print('RandomForestClassifier')
print(f'Precisão: {precision_score(y_validacao, y_previsto_rfc)}')
print(f'Recall: {recall_score(y_validacao, y_previsto_rfc)}')
print(f'F1-Score: {f1_score(y_validacao, y_previsto_rfc)}')
print(f'Acuráricia: {accuracy_score(y_validacao, y_previsto_rfc)}')
print('-'*50)
from sklearn.metrics import RocCurveDisplay
RocCurveDisplay.from_predictions(y_validacao, y_previsto_dtc)
RocCurveDisplay.from_predictions(y_validacao, y_previsto_rfc)
RocCurveDisplay.from_predictions(y_validacao, y_previsto_dummy)
from sklearn.metrics import PrecisionRecallDisplay
PrecisionRecallDisplay.from_predictions(y_validacao, y_previsto_dtc)
PrecisionRecallDisplay.from_predictions(y_validacao, y_previsto_dummy)
PrecisionRecallDisplay.from_predictions(y_validacao, y_previsto_rfc)
from sklearn.metrics import classification_report
print(classification_report(y_validacao, y_previsto_dummy))
print(classification_report(y_validacao, y_previsto_dtc))
print(classification_report(y_validacao, y_previsto_rfc))