emails

x = df.iloc[:,1:-1].values

y = df.iloc[:,-1].values

from sklearn.model_selection import train_test_split

x_train,x_test,y_train,y_test = train_test_split(x,y,test_size=0.25,random_state=10)

from sklearn.metrics import PrecisionRecallDisplay, RocCurveDisplay

from sklearn.metrics import (

    ConfusionMatrixDisplay,

    confusion_matrix,

    accuracy_score,

    precision_score,

    recall_score,

    PrecisionRecallDisplay,

    RocCurveDisplay

)

def report(classifier):

    y_pred = classifier.predict(x_test) #ye wala

    cm = confusion_matrix(y_test, y_pred) #ye wala

    display = ConfusionMatrixDisplay(cm, display_labels=classifier.classes_)

    display.plot()

    print(f”Accuracy:         {accuracy_score(y_test, y_pred):.4f}”)

    print(f”Precision Score:  {precision_score(y_test, y_pred):.4f}”)

    print(f”Recall Score:     {recall_score(y_test, y_pred):.4f}”)

 from sklearn.neighbors import KNeighborsClassifier

kNN = KNeighborsClassifier(n_neighbors=10)

kNN.fit(x_train,y_train)

kNN_predict=kNN.predict(x_test)

report(KNN)

—-

from sklearn.svm import SVC

svm = SVC(gamma=’auto’,random_state=10)

svm.fit(x_train,y_train)

svm_predict=svm.predict(x_test)