04_有监督学习--分类模型--K 近邻(kNN)
有监督学习–分类模型–K 近邻(kNN)
0.引入依赖
import numpy as np # 数值计算、矩阵运算、向量运算
import pandas as pd # 数值分析、科学计算
# 这里直接引入 sklearn 里的数据集 --> iris 鸢尾花
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split # 切分数据集为训练集和测试集
from sklearn.metrics import accuracy_score # 计算分类预测的准确率
1.数据的加载和预处理
iris = load_iris()
# iris # 字典
# type(iris) # sklearn.utils.Bunch
df = pd.DataFrame(data=iris.data, columns=iris.feature_names)
# print(df)
df['class'] = iris.target
df['class'] = df['class'].map({
0: iris.target_names[0], 1: iris.target_names[1], 2: iris.target_names[2]})
# df
df.describe()
输出结果如下:
[外链图片转存失败(img-Vq7yY2EZ-1569159823463)(https://s2.ax1x.com/2019/05/18/ELjizF.png)]
小测试:
x = iris.data
# x # x 是二维数组
# y = iris.target
# y # y 是一维数组,需要转成二维数组
y = iris.target.reshape