1.步骤:
(1)从sklearn导入鸢尾花数据集
(2)对数据集进行训练数据和测试数据划分,测试部分用来进行预测。
(3)均值方差法进行数据归一化(注意:训练数据和测试数据都要进行)
(4)网格搜索对三个参数(weights、p、n_neighbors)查找最优值。
(1)knn算法生成器
(2)打印最有参数和最好的预测率
(3)对测试数据集里面的测试数据进行预测
#从sklearn导入鸢尾花数据集
from sklearn import datasets
#加载数据集
iris=datasets.load_iris()
# print(iris)
#获取数据集的特征矩阵和标签向量,并存储
X_iris=iris.data
y_iris=iris.target
#对数据集进行训练数据和测试数据划分,测试部分用来进行预测
from sklearn.model_selection import train_test_split
#train_test_split划分数据,返回四个值,对应如下
X_train,X_test,y_train,y_test=train_test_split(X_iris,y_iris,test_size=0.10)
#均值方差法进行数据归一化
from sklearn.preprocessing import StandardScaler
#生成对象
std=StandardScaler()
#fit生成均值和方差
std.fit(X_train)
#存放均值的成员变量 std.mean_
#存放方差的成员变量std.scale_
#对训练数据和测试数据进行归一化
X_train_stand=std.transform(X_train)
X_test_stand=std.transform(X_test)
#最大值或者最小值进行数据归一化
from sklearn.preprocessing import MinMaxScaler
#生成对象
std=MinMaxScaler()
#fit生成均值和方差
std.fit(X_train)
#存放均值的成员变量 std.mean_
#存

该博客详细介绍了如何使用Python的sklearn库对鸢尾花数据集进行预测。首先,博主导入鸢尾花数据集,并将其划分为训练集和测试集。接着,运用均值方差法对数据进行归一化处理。然后,通过网格搜索找到支持向量机模型的最佳参数,包括weights、p和n_neighbors。最后,利用最优参数的knn算法生成器对测试数据进行预测,得到了最佳预测率。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



