基本步骤流程:
- 收集数据
- 数据归一化
- 使用KNN算法进行测试
本例来自Peter Harrington编著的《机器学习实战》, 书中配套代码放在GitHub上《机器学习实战》
约会数据放在文本文件datingTestSet.txtz中,有需要的可以联系,每个样本数据占一行,总共有1000行。每个样本包括3个特征:
- 每年飞行的旅程数
- 玩游戏所耗时间百分比
- 每周消费的冰淇淋公升数
分类结果有三类:
- 1代表没有魅力
- 2代表有一点魅力
- 3代表十分有魅力
1.新建KNN.py文件
1.1将文本文件转换为数组:
import numpy as np
#文本文件转换为计算机认识的数据格式
def file2matrix(fileName):
f = open(fileName)
arrayLines = f.readlines()#读出所有行
lenLines = len(arrayLines)#有多少行
dataSet = np.zeros((lenLines,3))
labels