K临近算法可以根据csv文件作为输入数据吗,具体代码是什么
时间: 2024-03-19 19:46:25 浏览: 13
是的,K临近算法可以根据csv文件作为输入数据。具体代码如下:
```python
import pandas as pd
from sklearn.neighbors import KNeighborsClassifier
# 读取CSV文件
data = pd.read_csv('data.csv')
# 提取特征和标签数据
X = data.iloc[:, :-1].values
y = data.iloc[:, -1].values
# 数据归一化处理
from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
X = scaler.fit_transform(X)
# 划分训练集和测试集
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
# 创建KNN分类器
knn = KNeighborsClassifier(n_neighbors=5)
# 训练模型
knn.fit(X_train, y_train)
# 预测测试集结果
y_pred = knn.predict(X_test)
# 计算模型准确率
from sklearn.metrics import accuracy_score
acc = accuracy_score(y_test, y_pred)
print("准确率:", acc)
```
其中,`data.csv`是存储数据的csv文件名,数据的最后一列是标签数据。代码中首先读取csv文件,然后提取特征和标签数据,进行数据归一化处理和划分训练集和测试集,创建KNN分类器并训练模型,最后进行预测和计算准确率。