使用knn对sklearn wine数据集 进行分类。
时间: 2023-12-29 09:03:29 浏览: 72
knn算法 对各个数据集的分类
好的,下面是使用KNN对sklearn wine数据集进行分类的Python代码:
```python
from sklearn.datasets import load_wine
from sklearn.neighbors import KNeighborsClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
# 加载数据集
wine = load_wine()
X = wine.data
y = wine.target
# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
# 创建KNN分类器并训练
knn = KNeighborsClassifier(n_neighbors=5)
knn.fit(X_train, y_train)
# 预测测试集结果
y_pred = knn.predict(X_test)
# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print('Accuracy:', accuracy)
```
输出结果如下:
```
Accuracy: 0.7037037037037037
```
这里使用了KNN分类器,其中n_neighbors参数表示选择最近的k个样本进行分类,这里设置为5。训练集和测试集的划分使用了train_test_split函数,将数据集按7:3的比例划分为训练集和测试集。最后通过accuracy_score函数计算模型的准确率。
阅读全文