Finish TP3 exo1 for real.
[TP_AA.git] / TP1 / exo2 / TP1prog3.py
1 #!/usr/bin/env python3
2
3 # -*- coding: utf-8 -*-
4 import random
5 from sklearn import neighbors
6 from sklearn.cross_validation import train_test_split
7 from sklearn.datasets import load_iris
8 irisData = load_iris()
9
10 X = irisData.data
11 Y = irisData.target
12
13 # print(help(train_test_split))
14 X_train, X_test, Y_train, Y_test = train_test_split(
15 X, Y, test_size=0.3, random_state=random.seed())
16 # print(len(X_train))
17 # print(len(X_test))
18 # print(len(X_train[Y_train == 0]))
19 # print(len(X_train[Y_train == 1]))
20 # print(len(X_train[Y_train == 2]))
21
22 nb_voisins = 15
23 clf = neighbors.KNeighborsClassifier(nb_voisins)
24 clf.fit(X_train, Y_train)
25 # print("kNN prediction on [5.4, 3.2, 1.6, 0.4]:")
26 # print(clf.predict([[5.4, 3.2, 1.6, 0.4]]))
27 # print("kNN probability prediction on [5.4, 3.2, 1.6, 0.4]:")
28 # print(clf.predict_proba([[5.4, 3.2, 1.6, 0.4]]))
29 print("kNN score on Iris test data:")
30 print(clf.score(X_test, Y_test))
31 print("kNN prediction error(s) on Iris test data:")
32 Z = clf.predict(X_test)
33 print(X_test[Z != Y_test])