【案例】利用k近邻算法判断电影类别。
假设有如下数据,判断新电影(打斗镜头24,接吻镜头67)应该属于爱情片还是动作片。
绘制图表如下:
k-近邻算法步骤如下:
(1) 计算已知类别数据集中的点与当前点之间的距离;
(2) 按照距离递增次序排序;
(3) 选取与当前点距离最小的k个点;
(4) 确定前k个点所在类别的出现频率;
(5) 返回前k个点出现频率最高的类别作为当前点的预测类别。
算法实现:
算法步骤:
1.构建已经分类好的原始数据集。
2.计算已知类别数据集中的点与当前点之间的距离。
3.将距离升序排列,然后选取距离最小的k个点。
4.确定前k个点所在类别的出现频率。
5.选择频率最高的类别作为当前点的预测类别。
代码:
import pandas as pd
# 1.构建已经分类好的原始数据集
rowdata = {'电影名称': ['无问西东', '后来的我们', '前任3', '红海行动', &