基于K-近邻算法的约会网站用户预测

本文档介绍了如何使用K-近邻(KNN)算法建立一个预测约会网站用户魅力的系统。首先从《机器学习实战》配套代码获取数据,接着进行数据归一化,然后使用KNN进行测试。数据包括每年飞行旅程数、游戏时间百分比和每周冰淇淋消费量三个特征,分类结果分为无魅力、稍有魅力和十分有魅力三类。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

基本步骤流程:

  1. 收集数据
  2. 数据归一化
  3. 使用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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东城青年

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值