knn的python代码_详细的的KNN代码——python实现
直接放代码
import random
import numpy as np
#设置k=3
k=3
def readyData():
#准备一个训练数组
group=np.array([[78,89,88],
[43,23,53],
[87,69,99],
[88,79,69],
[54,33,44],
[77,99,82]])
#并给上对应的标签
labels=['好成绩','差成绩','好成绩','好成绩','差成绩','好成绩']
return group,labels
def Classify_KNN(test,dataSet,labels,k):
#训练数组有多少行,shape[0]得到DataSet的行数
row_num=dataSet.shape[0]
#先将test数据变成一个跟dataSet同样多行的数组,再与dataSet相减
xiangjian=np.tile(test,(row_num,1))-dataSet
#相减后平方
pingfang=xiangjian**2
'''
关于numpy.sum的用法
https://0x9.me/8BUsa
c = np.array([[0, 2, 1], [3, 5, 6], [0, 1, 1]])
print c.sum()
print c.sum(axis=0)
print c.sum(axis=1)
结果分别是:19, [3 8 8], [ 3 14 2]
axis=0, 表示列。
axis=1, 表示行。
'''
#平方相加
row_sum=pingfang.sum(axis=1)
#再开方
distances=row_sum**0.5
# argsort()将距离从小到大排序,并得到之前所在的index
sortDistance=distances.argsort()
# 定一个记录类别次数的字典
countClass={}
for i in range(k):
test_label=labels[sortDistance[i]]
countClass[test_label]=countClass.get(test_label,0)+1
sortCountClass=sorted(countClass,key=lambda x:[2],reverse=True)
return sortCountClass[0]
if __name__=='__main__':
group,labels=readyData()
testData=[]
for i in range(10):
Chinese=random.random()*100
Math=random.random()*100
English=random.random()*100
tem=[Chinese,Math,English]
testData.append(tem)
for test in testData:
print(test)
result=Classify_KNN(test,group,labels,k)
print(result)
参考资料:https://www.cnblogs.com/yyxf1413/p/6253995.html
knn的python代码_详细的的KNN代码——python实现相关推荐
- python手机充值代码_不用框架,原生使用python做注册接口/登陆接口/充值接口的测试,做的数据/代码分离...
注意充值时候,cookie的处理方法,还是原来的三种方法 1.操作数据文件 do_exclel.py # -*- conding:utr-8 -*- #@Time :2018/11/8 22:46 ...
- python 偏函数_详细介绍Python中的偏函数
机器学习实战之Logistic回归 本文来自云栖社区官方钉群"Python技术进阶",了解相关信息可以关注"Python技术进阶". 本系列教程特点: 基于&l ...
- python博弈论代码_使用 40 多行的 Python 代码实现一个简单的演化过程
Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发. 在纳米比亚的 PyCon 会议上,我发表了一篇名为 <使用 Python 解决"升级版的剪 ...
- python测验5 函数和代码_测验5: 函数和代码复用 (第5周)-单选题
1.以下选项不是函数作用的是: A. 提 ...
- html打印代码_惊呆了,我的 Python 代码里面出现了薛定谔的 Bug
IT服务圈儿 有温度.有态度的IT自媒体平台 本文经公众号:未闻Code(ID:itskingname) 授权转载 作者:kingname GNE: 新闻网页正文通用抽取器[1]更新了0.2.1版本, ...
- python第一行代码_“少年py”001:下载Python软件,写第一行代码
Python,网络上称之为人工智能时代的第一编程语言. 功能超级强大,能做科学计算.大数据处理.网络爬虫.游戏开发等等. 但是说实话,彬哥玩Python还没到这么厉害的程度,究竟怎么实现,我们不着急, ...
- js如何运行python代码_手把手教你如何使用Python执行js代码
前言 各位小伙伴,大家好,这次咱们来说一下关于爬虫方向的一个知识,Python如何执行js,快来看看吧!!! 为什么要引出Python执行js这个问题? 都说术业有专攻,每个语言也都有自己的长处和短处 ...
- python3经典小程序代码_一个可以套路别人的python小程序实例代码
python可以开发什么?谁有python小程序的源代码,...桌面程序,web都可以,还有比如现在讲的多的人工智能,神经网络源码可以去找一些开源代码,搜索一下,蛮多的. 分享python小程序代码练 ...
- 浪漫的python代码_七夕,最浪漫的Python代码送给陷入爱河的Python男同胞
七夕,最浪漫的Python代码送给陷入爱河的Python男同胞 image.gif 三句话情书,我们听过.如何用python写一段浪漫的代码?可以是简短有韵味的情书式, 也欢迎冗长而效果拔群的万行 ...
最新文章
- 【POJ】【2449】Remmarguts' Date
- C++末尾匹配(C与C++解决)
- 推荐 GitHub 2K+ 星:前端监控工具 - webfunny 项目
- JDBC常用API小结
- 1017. A除以B (20)
- 用汇编的眼光看c++(之模板函数)
- centos7修改主机名hostname
- 一行代码迁移TensorFlow 1.x到TensorFlow 2.0
- c语言各种头文件函数解释,c语言头文件及其函数
- 目标检测(二):OverFeat
- 为什么重复率高的字段不适合作为索引
- 透视宝移动端对Unity手机游戏引擎监控实现 1
- [2020.1.10]systemd介绍
- 在Android中调用浏览器打开网页方式
- 医院html完整页面设计代码,医院HTML5模板
- C/C++ 如何构造出强悍的宏
- J2SE-Java基础
- VM15安装MacOS10.15.1系统
- Java实现字符串加密与解密
- dvajs项目要部署到服务器上,dvaJs使用注意事項