From 13fa08cf6ffa06ed2886778fc0e28d20dc49a55d Mon Sep 17 00:00:00 2001 From: Taylor Smith Date: Thu, 19 Jul 2018 11:48:06 -0500 Subject: [PATCH] Update comments and KNN example --- examples/clustering/example_knn_classifier.py | 9 +++++++-- img/clustering/example_knn_classifier.png | Bin 22942 -> 21561 bytes packtml/clustering/knn.py | 9 ++++++++- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/examples/clustering/example_knn_classifier.py b/examples/clustering/example_knn_classifier.py index 239ff6c..1e81691 100644 --- a/examples/clustering/example_knn_classifier.py +++ b/examples/clustering/example_knn_classifier.py @@ -5,22 +5,27 @@ from __future__ import absolute_import from packtml.clustering import KNNClassifier from packtml.utils.plotting import add_decision_boundary_to_axis from sklearn.model_selection import train_test_split +from sklearn.preprocessing import StandardScaler from sklearn.metrics import accuracy_score from sklearn.datasets import load_iris from matplotlib import pyplot as plt from matplotlib.colors import ListedColormap -import numpy as np import sys # ############################################################################# # Create a classification sub-dataset using iris iris = load_iris() -X = iris.data[:, :2] +X = iris.data[:, :2] # just use the first two dimensions y = iris.target # split data X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=42) +# scale the data +scaler = StandardScaler() +X_train = scaler.fit_transform(X_train) +X_test = scaler.transform(X_test) + # ############################################################################# # Fit a k-nearest neighbor model and get predictions k=10 diff --git a/img/clustering/example_knn_classifier.png b/img/clustering/example_knn_classifier.png index 6ce10cb93de9966c09337fa0084a95dd1418bb04..d59ba2fb04646ef02750c8caa86e3c4f2f1f2264 100644 GIT binary patch literal 21561 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 E?;TEklmGw# literal 22942 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