knn算法 python
时间: 2023-09-13 14:07:19 浏览: 91
K最近邻(K-Nearest Neighbors,简称KNN)是一种常用的分类和回归算法。它是基于实例的学习方法,通过计算待分类样本与训练数据集中的样本之间的距离,选择K个最近邻样本的类别进行投票或者计算平均值来确定待分类样本的类别或数值。
在Python中,我们可以使用scikit-learn库来实现KNN算法。下面是一个简单的KNN分类器的示例代码:
```python
from sklearn.neighbors import KNeighborsClassifier
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
# 加载鸢尾花数据集
iris = load_iris()
X, y = iris.data, iris.target
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2)
# 创建KNN分类器对象
knn = KNeighborsClassifier(n_neighbors=3)
# 拟合模型
knn.fit(X_train, y_train)
# 预测
y_pred = knn.predict(X_test)
# 计算准确率
accuracy = knn.score(X_test, y_test)
print("Accuracy:", accuracy)
```
以上示例代码展示了如何使用KNN算法对鸢尾花数据集进行分类。首先,我们导入必要的库,并加载鸢尾花数据集。然后,我们划分数据集为训练集和测试集。接着,我们创建一个KNN分类器对象,并使用训练集数据进行拟合。最后,我们用测试集数据进行预测,并计算模型的准确率。
你可以根据实际需求调整KNN算法中的参数,如选择合适的K值、使用不同的距离度量等。希望对你有所帮助!如果你还有其他问题,请继续提问。
阅读全文