Question
Hi! This is a Python course I'm currently taking. I'm having trouble trying to implement a for loop in my code code. The goal is
Hi! This is a Python course I'm currently taking. I'm having trouble trying to implement a for loop in my code code. The goal is to build knn models for these 9 k values 1,3,5,7,9,12,15,17,19 and display the classification report(s) that has all the ratios for accuracy, recall, precision etc using a for loop. Here's my code:
from sklearn import datasets from sklearn.preprocessing import StandardScaler from sklearn.model_selection import train_test_split from sklearn.neighbors import KNeighborsClassifier from sklearn.metrics import confusion_matrix from sklearn.metrics import classification_report import numpy as np import pandas as pd
from sklearn import datasets iris = datasets.load_iris ()
X = iris.data y = iris.target X.shape y.shape np.unique(y, return_counts=True) # Scale the data scaler = StandardScaler() X = scaler.fit_transform(X) # Divide the data for training and testing X_train,X_test, y_train, y_test = train_test_split(X,y, test_size=.3, random_state=1234, stratify=y)
knnValues=[1,3,5,7,9,12,15,17,19] for k in knnValues: print("knn value", k) # Make an instance of KNeighborsClassifier class knnc = KNeighborsClassifier()
# Fit the k-nearest neighbors classifier from the dataset. knnc.fit(X_train, y_train) # Make predictions using the dataset y_pred_knnc = knnc.predict(X_test) # Build a confusion matrix and show the Classification Report cm_knnc = confusion_matrix(y_test,y_pred_knnc) print(' **Confusion Matrix** ',cm_knnc) print(' **Classification Report** ') print(classification_report(y_test,y_pred_knnc))
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started