Problem
OUTPUT
CODE
import numpy as np
from sklearn.ensemble import RandomForestClassifier
from sklearn.naive_bayes import GaussianNB
from sklearn.model_selection import KFold
from sklearn import datasets, metrics, cross_validation
from sklearn.svm import SVC
iris = datasets.load_iris()
kf = cross_validation.KFold(len(iris.data), n_folds=10, shuffle=True)
x,y = datasets.make_classification(n_samples=1000, n_features=10)
for train_index, test_index in kf:
X_train, Y_train = x[train_index],y[train_index]
X_test, Y_test = x[test_index], y[test_index]
GaussianAccuracy = []
GaussianF1score = []
GaussianAuc = []
clf = GaussianNB()
clf.fit(X_train, Y_train)
pred = clf.predict(X_test)
GaussianAccuracy.append(metrics.accuracy_score(Y_test, pred))
GaussianF1score.append(metrics.f1_score(Y_test, pred,average='micro'))
GaussianAuc.append(metrics.roc_auc_score(Y_test, pred))
print("GaussianNB Accuracy:", GaussianAccuracy)
print("GaussianNB F1-score:", GaussianF1score)
print("GaussianNB AUC:", GaussianAuc)
SVCAccuracy = []
SVCF1score = []
SVCAuc = []
clf = SVC(C=1e00, kernel='rbf', gamma=0.1)
clf.fit(X_train, Y_train)
pred = clf.predict(X_test)
SVCAccuracy.append(metrics.accuracy_score(Y_test, pred))
SVCF1score.append(metrics.f1_score(Y_test, pred))
SVCAuc.append(metrics.roc_auc_score(Y_test, pred))
print("SVC Accuracy:", SVCAccuracy)
print("SVC F1-score:", SVCF1score)
print("SVC AUC:", SVCAuc)
RFCAccuracy = []
RFCF1score = []
RFCAuc = []
clf = RandomForestClassifier(n_estimators=100)
clf.fit(X_train, Y_train)
pred = clf.predict(X_test)
RFCAccuracy.append(metrics.accuracy_score(Y_test, pred))
RFCF1score.append(metrics.f1_score(Y_test, pred))
RFCAuc.append(metrics.roc_auc_score(Y_test, pred))
print("RandomForest Accuracy:", RFCAccuracy)
print("RandomForest F1-score:", SVCF1score)
print("RandomForest AUC:", RFCAuc)