使用R语言构建KNN多分类模型
K近邻(K-Nearest Neighbors,简称KNN)是一种常用的分类算法,它通过测量不同数据点之间的距离来进行分类。在本文中,我们将使用R语言来构建一个KNN多分类模型,并使用相应的源代码进行演示。
首先,我们需要准备我们的数据集。这里我们以鸢尾花数据集(Iris dataset)为例。该数据集包含了150个样本,每个样本有4个特征,分别是花萼长度、花萼宽度、花瓣长度和花瓣宽度。每个样本还有一个对应的类别标签,表示鸢尾花的品种,包括Setosa、Versicolor和Virginica。
以下是数据集的加载和预处理的代码:
# 加载鸢尾花数据集
data(iris)
# 将数据集分为特征和标签
features <- iris[, 1:4]
labels <- iris[, 5]
# 将标签转换为因子(factor)类型
labels <- as.factor(labels)
# 查看数据集的前几行
head(iris)
接下来,我们将数据集划分为训练集和测试集。训练集用于构建KNN模型,而测试集用于评估模型的性能。在这里,我们将80%的数据用作训练集,20%的数据用作测试集。
# 设置随机种子以确保可重复性
set.seed(123)
# 划分训练集和测试集
train_indices <- sample(1:nrow(iris), 0.8 * nrow(iris))
train_set <- iris[train_indices, ]
test