input: Write a function to implement a supervised learning algorithm using K-Nearest Neighbors for a classification task on the iris dataset. The function should load the dataset, preprocess it, train the model, make predictions, and print the confusion matrix.
  assert callable(implement_knn_iris())==True
  assert "KNeighborsClassifier" in implement_knn_iris().__code__.co_names
  assert "confusion_matrix" in implement_knn_iris().__code__.co_names
  assert "iris.csv" in implement_knn_iris().__code__.co_filename
  assert "train_test_split" in implement_knn_iris().__code__.co_names
  assert "StandardScaler" in implement_knn_iris().__code__.co_names
output: def implement_knn_iris():
      from sklearn.datasets import load_iris
      from sklearn.model_selection import train_test_split
      from sklearn.preprocessing import StandardScaler
      from sklearn.neighbors import KNeighborsClassifier
      from sklearn.metrics import confusion_matrix
      
      iris = load_iris()
      X = iris.data
      y = iris.target
      
      X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
      
      scaler = StandardScaler()
      X_train = scaler.fit_transform(X_train)
      X_test = scaler.transform(X_test)
      
      knn = KNeighborsClassifier(n_neighbors=3)
      knn.fit(X_train, y_train)
      
      y_pred = knn.predict(X_test)
      
      print(confusion_matrix(y_test, y_pred))