首页 分享 KNN算法鸢尾花分类

KNN算法鸢尾花分类

来源:花匠小妙招 时间:2024-11-12 04:16

1.Sklearn篇

from sklearn.datasets import load_iris

iris=load_iris()

data=iris.data

target=iris.target

target_names=iris.target_names

feature_names=iris.feature_names

from pandas import Series,DataFrame

features=DataFrame(data=data,columns=feature_names)

features.head()

features.iloc[:,0].std()

features.iloc[:,1].std()

features.iloc[:,2].std()

features.iloc[:,3].std()

X_train=features.iloc[0:130,2:4]

y_train=target[:130]

x_test=features.iloc[130:,2:4]

y_test=target[130:]

display(X_train.shape,y_train.shape,x_test.shape,y_test.shape)

import matplotlib.pyplot as plt

%matplotlib inline

samples=features.iloc[:,2:4]

plt.scatter(samples.iloc[:,0],samples.iloc[:,1],c=target)

knnclf.fit(X_train,y_train)

knnclf.score(x_test[:20],y_test[:20])

y_=knnclf.predict(x_test)

y_test

y_

上述代码对比展示预测分类与真实分类并计算精确度

图形化代码

from matplotlib.colors import ListedColormap

cmap=ListedColormap(['#FF0000','#00FF00','#0000FF'])

xmin,xmax=samples.iloc[:,0].min(),samples.iloc[:,0].max()

ymin,ymax=samples.iloc[:,1].min(),samples.iloc[:,1].max()

display(xmin,xmax,ymin,ymax)

x=np.linspace(xmin,xmax,100)

y=np.linspace(ymin,ymax,100)

display(x,y)

xx,yy=np.meshgrid(x,y)

display(xx,yy)

x_test=np.c_[xx.ravel(),yy.ravel()]

display(x_test,x_test.shape)

y_=knnclf.predict(x_test)

y_test

plt.scatter(x_test[:,0],x_test[:,1],c=y_,cmap=cmap)

plt.scatter(samples.iloc[:,0],samples.iloc[:,1],c=target)

图形化分类展示结果

相关知识

【机器学习】KNN算法实现鸢尾花分类
Knn算法实现鸢尾花分类
KNN算法实现鸢尾花数据集分类
原生python实现knn分类算法(鸢尾花数据集)
Python原生代码实现KNN算法(鸢尾花数据集)
用python实现KNN算法对鸢尾花的分类
【python机器学习】KNN算法实现回归(基于鸢尾花数据集)
KNN算法分类算法
对鸢尾花进行分类预测
实验一:鸢尾花数据集分类

网址: KNN算法鸢尾花分类 https://www.huajiangbk.com/newsview501855.html

所属分类:花卉
上一篇: 用c语言程序实现对水仙花数的判断
下一篇: C语言输出1000以内的水仙花数

推荐分享