分类是一种常见的机器学习算法,是一种有监督的算法。简单说就是给出学习集数据都是带标签的,通过训练学习集数据获得模型,对未来给出的实际数据,根据模型进行分类。这里采用K最近邻算法(KNN,K-nearest neighbour)

KNN算法非常直观,容易理解,就是寻找K个距离最近的邻居,看这K个近邻中哪个分类标签多,样本就归于哪类。

下面以一个对学生文理、综合分类问题进行实例操作。

数据文件是一个学生成绩及分类表,样式如下

ID yingyu yuwen shuxue ClassifyResult

0 0 80 80 79 3

1 1 99 89 60 1

2 2 60 78 90 2

3 3 90 70 88 3

4 4 66 77 88 2

代码如下:

import pandas as pd

from sklearn import neighbors

df = pd.read_csv('student.csv')

train_x = df.iloc[0:80,2:4] # 取数据集前80条记录的语文,数学成绩作为训练集输入

train_y = df.iloc[0:80, 4] # 取数据集前80条记录的标签值,即分类值作为训练集的输出

model = neighbors.KNeighborsClassifier() # 创建最近邻模型

model.fit(train_x, train_y) # 指定输入输出,创建模型

test_x = df.iloc[80:100, 2:4]# 取测试集输入

test_y = df.iloc[80:100, 4].values #取测试集输出,并将数据框转换成数组

test_p = model.predict(test_x)

print(test_p)

print(test_y)

rate = model.score(test_x,test_y) # 记算预测结果的正确率

print('预测结果的正确率是{0:*^10}'.format(rate))

运行结果如下:

[3 1 1 3 3 3 1 1 3 2 2 3 1 3 1 3 3 3 3 1]

[2 3 3 3 3 3 1 1 2 2 2 3 1 3 1 3 1 1 3 3]

预测结果的正确率是***0.65***

此次预测的正确率为0.65,并不是很高,主要是输入训练文件质量不高造成的。但这个小程序实现了KNN分类算法的全部功能,还是值得借鉴的

python人工智能算法代码_python人工智能,分类例解相关推荐

  1. python人工智能算法包_Python 人工智能算法工具包 SimpleAI

    软件介绍 SimpleAI 是 Python 实现的人工智能算法工具包,示例代码:from simpleai.search import SearchProblem, astar GOAL = 'HE ...

  2. python堆排序算法代码_python堆排序算法实例代码

    python 实现堆排序算法代码,需要的朋友可以参考下 代码如下:#!/usr/bin/python import sys def left_child(node): return node * 2 ...

  3. python排序算法代码

    python排序算法代码: def bubble_sort(nums):# 获取列表长度 size = len(nums)# 若列表长度为0或1,则直接返回if size <= 1:return ...

  4. python编程人工智能小例子,python人工智能算法代码

    python 怎么实现人工智能 一.Python是解释语言,程序写起来非常方便写程序方便对做机器学习的人很重要. 因为经常需要对模型进行各种各样的修改,这在编译语言里很可能是牵一发而动全身的事情,Py ...

  5. python人工智能学多久_Python人工智能学习需要多久?什么学历可以学习?

    当下有很多热门的技术,Python人工智能就是其中之一,在薪资待遇方面AI类岗位.大数据类岗位普遍排名在前.同时人才需求量一直处于上升趋势中,因此越来越多人都想参加Python人工智能培训,那么人工智 ...

  6. python求最大值代码_python 最大值

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 推荐使用腾讯云 api 配套的 7 种常见的编程语言 sdk,已经封装了签名和请 ...

  7. python基本算法语句_Python中基本且又常用的算法

    这篇文章主要学习Python常用算法,Python常用排序算法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 本节内容 算法定义 时间复杂度 空间复杂度 常用算法实例 1.算法定义 算法(Algo ...

  8. 算法代码_Python进化算法之多目标优化与代码实战

    前言 自从上三篇博客详细讲解了Python遗传和进化算法工具箱及其在带约束的单目标函数值优化中的应用.利用遗传算法求解有向图的最短路径.利用进化算法优化SVM参数之后,这篇不再局限于单一的进化算法工具 ...

  9. python多元线性回归代码_Python实现梯度下降算法求多元线性回归(一)

    预备知识及相关文档博客 学习吴恩达机器学习课程笔记,并用python实现算法 python numpy基本教程: numpy相关教程 数据来自于UCI的机器学习数据库: UCI的机器学习数据库 pyt ...

最新文章

  1. 认清自己,就能活出更好的自己
  2. 南京铁道学院计算机应用,南京铁道职业技术学院交通运营管理专业怎么样
  3. Android平台基于RTMP或RTSP的一对一音视频互动技术方案探讨
  4. Springboot项目固化依赖的那点事
  5. mysql mssql 性能对比_MySQL最新版8.0与5.7之性能对比,看看它是如何改进的
  6. W​o​r​d​P​r​e​ss数据结构分析
  7. 析构函数为虚函数的必要性
  8. Struts框架详解
  9. 一对一语音视频直播双端原生+php后台源码 社交交友APP匹配语音视频聊天即时通信源码
  10. 【PS】4组318张超高清叠加层+PS动作图片素材
  11. 百度K站的神奇简单有效的方法
  12. php计算两个坐标(经度,纬度)之间距离
  13. GraphQL学习第三篇 -在Express中使用GraphQL
  14. easyUI之LinkButton(按钮)
  15. 在高德地图 Android SDK上添加GeoServer发布的WMS图层
  16. 网络维护和服务器面试常考题,网络维护面试题
  17. 战痘实录,又同样烦恼的可以看看(转)
  18. 阿里云 linux服务器安装tomcat(图文详解)
  19. 【记录】ubuntu下安装和部署RAP2
  20. Java 公交车案例

热门文章

  1. Windows Server 2008设置远程桌面连接数
  2. CSS魔法堂:小结一下Box Model与Positioning Scheme
  3. java_db常见错误总结
  4. 处理动态SQL语句的参数
  5. ASP.NET MVC实践系列11-FCKEditor和CKEditor的使用
  6. ADMT3.1快速迁移域用户账户和组[为企业维护windows server 2008系列十四]
  7. 自动生成mybatisplus的相关代码
  8. Assembly Manifest 通俗简易手册
  9. oracle-不完全数据库恢复-被动恢复-RMAN-06025/ORA-01190
  10. JAX-RPC 与 JAX-WS 的比较