Как экспортировать выходные данные отчета о классификации и матрицы путаницы в файл pdf или excel

#python #pdf #scikit-learn #seaborn #xlsx

Вопрос:

В моем коде ниже я хочу, чтобы:

  1. Экспортируйте значения classification_report и cm в .xlsx файл excel
  2. Экспортируйте изображения classification_report и cm в pdf файл

Запускаю свой код classification_report и confusion_matrix (cm) выгляжу так (см. рисунок ниже). Тем не менее, я хочу сделать #1 и #2

введите описание изображения здесь

 print(classification_report(y_test,y_pred))    
cm =confusion_matrix(y_test, y_pred) 
sns.heatmap(cm, annot=True) 
plt.show()
 

Полный код:

 #libraries

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split
from xgboost import XGBClassifier
from sklearn.metrics import accuracy_score
from sklearn.preprocessing import StandardScaler
from sklearn.metrics import classification_report
from sklearn.metrics import confusion_matrix

#import data

df=pd.read_csv('https://gist.githubusercontent.com/curran/a08a1080b88344b0c8a7/raw/0e7a9b0a5d22642a06d3d5b9bcbad9890c8ee534/iris.csv', delimiter=",")


X = df.loc[:,df.columns!='species'] 
y = df.loc[:,df.columns == 'species']

# split into train and test sets

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=69876)

# train classifier and predict on test set 
model = XGBClassifier()
model.fit(X_train,y_train)
y_pred = model.predict(X_test)

print(classification_report(y_test,y_pred)) #   
cm =confusion_matrix(y_test, y_pred) #
print(cm) 
sns.heatmap(cm, annot=True) 
plt.show()