#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time    : 2018/11/7 14:50
# @Author  : gylhaut
# @Site    : "http://www.cnblogs.com/gylhaut/"
# @File    : KNNAlgorithm.py
# @Software: PyCharm# coding:utf-8from numpy import *
import operator##给出训练数据以及对应的类别
def createDataSet():group = array([[1.0, 2.0], [1.2, 0.1], [0.1, 1.4], [0.3, 3.5]])labels = ['A', 'A', 'B', 'B']return group, labels###通过KNN进行分类
def classify(input, dataSet, label, k):''':param input: test集:param dataSet: 训练集:param label: 训练output:param k: k值选择:return:'''dataSize = dataSet.shape[0] # 4####计算欧式距离# print(tile(input, (dataSize, 1)))diff = tile(input, (dataSize, 1)) - dataSetsqdiff = diff ** 2squareDist = sum(sqdiff, axis=1)  ###行向量分别相加,从而得到新的一个行向量dist = squareDist ** 0.5#print(dist)##对距离进行排序sortedDistIndex = argsort(dist)  ##argsort()根据元素的值从小到大对元素进行排序,返回下标#print(sortedDistIndex)classCount = {}for i in range(k):voteLabel = label[sortedDistIndex[i]]#print(voteLabel)###对选取的K个样本所属的类别个数进行统计classCount[voteLabel] = classCount.get(voteLabel, 0) + 1###选取出现的类别次数最多的类别#print(classCount)maxCount = 0for key, value in classCount.items():if value > maxCount:maxCount = valueclasses = keyreturn classesfrom numpy import *
dataSet,labels = createDataSet()
input = array([1.1,0.3])
K = 3
output = classify(input,dataSet,labels,K)
print("测试数据为:",input,"分类结果为:",output)

转载于:https://www.cnblogs.com/gylhaut/p/9922994.html

基于python 实现KNN 算法相关推荐

  1. NLP之ASR:基于python和机器学习算法带你玩转的语音实时识别技术

    NLP之ASR:基于python和机器学习算法带你玩转的语音实时识别技术 导读 带你玩转python实现的语音实时识别技术(包括音频混音.回声消除.噪音滤除.杂音消除.静音检测等方法) 视频观看: 软 ...

  2. Python实现kNN算法

    Python实现kNN算法 1. 原理 k-最近邻: kNN(k-NearestNeighbor)分类算法机器学习中最简单的分类方法之一.所谓K最近邻,就是k个最近的邻居的意思,说的是每个样本都可以用 ...

  3. python 雪花id_基于python实现雪花算法过程详解

    这篇文章主要介绍了基于python实现雪花算法过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 Snowflake是Twitter提出来的一个 ...

  4. Python实现KNN算法(鸢尾花集)

    不同颜色的鸢尾花花语不尽相同,蓝色鸢尾花语是精致的美丽,红色鸢尾花的花语代表着热情.适应力强.紫蓝色鸢尾花花语代表着好消息.想念你.黄色鸢尾花的花语代表着友谊永固.热情开朗,白色鸢尾花花语代表着纯真. ...

  5. 用Python实现KNN算法(从原理到代码的实现)

    用Python实现KNN算法(从原理到代码的实现) 环境 1.Pycharm 2.python3.6 声明:本栏的所有文章皆为本人学习时所做笔记而整理成篇,转载需授权且需注明文章来源,禁止商业用途,仅 ...

  6. python实现KNN算法在电影分类中的应用

    使用python实现KNN算法在电影分类中的应用 代码如下: import numpy as np import operator""" 使用KNN算法对电影进行分类 K ...

  7. Python 基于SVM和KNN算法的红酒分类

    Python 机器学习之红酒分类问题 文章目录 Python 机器学习之红酒分类问题 前言 一.问题和目标是什么 1.原题 2.题目分析 二.算法简介 三.代码实现 1.算法流程框架 2.第三方库调用 ...

  8. python的knn算法list_机器学习实战学习笔记1——KNN算法

    一.KNN算法概述: 1.KNN算法的工作原理是: (1)存在一个训练样本集,并且知道样本集中每一数据与所属分类的对应关系,即每个数据都存在分类标签. (2)若此时输入不带标签的新数据之后,将新数据的 ...

  9. 基于Python的KNN数字验证码识别

    一.主要内容 本项目基于Python爬虫爬取验证码图片,对图片进行去噪.分割,通过KNN算法训练模型,实现验证其准确率. 二.系统流程 首先从指定的网页中爬取验证码图片数据,然后对数据进行一个去噪和分 ...

  10. ML一:python的KNN算法

    (1):list的排序算法: 参考链接:http://blog.csdn.net/horin153/article/details/7076321 示例: DisListSorted = sorted ...

最新文章

  1. wfs.js windows用法
  2. 线程:类ThreadLocal的使用
  3. 关于SAP CRM Organization Unit组织结构单元自动决定的一些调试
  4. sae 本地环境 mysql数据库_SAE本地环境与真实环境的差别
  5. 数据可视化【七】 更新模式
  6. 求合体电脑版_网红界宋祖儿找年轻版言承旭当男友,一张合照收割大量cp粉?!...
  7. http协议的状态码400,401,403,404,500,502,503,301,302等常见网页错误代码
  8. k8s安装sqlite3_kubernetes环境部署单节点redis数据库的方法
  9. 为啥JS/TS里都会有“use strict“
  10. SoundSource for Mac - 音频控制工具
  11. 你们骂我骂的舒服么?
  12. Jupyter notebook文件默认存储路径以及更改方法
  13. java8新特性——如何使用lambda
  14. 拳王虚拟项目公社:微店闲鱼怎样自动化卖虚拟商品,虚拟资源自动化收钱项目
  15. 什么是无线射频识别技术(RFID)
  16. Dagger2的介绍和配置
  17. 【JUC高并发编程】—— 再见JUC
  18. bzoj 3838: [Pa2013]Raper (线段树)
  19. 英伟达点开后显示无法连接服务器,解决win10提示“无法连接到 NVIDIA 检查您的互联网连接”的教程...
  20. setup界面的network configuration 进不去的原因

热门文章

  1. 数据库报错“system01.dbf需要更多的恢复来保持一致性,数据库无法打开”
  2. android studio sqlite操作代码片段
  3. event.keyCode 事件属性
  4. Sublime Text 3运行JavaScript控制台
  5. 有专用DHCP服务器的网络的简单配置
  6. sql与ORACLE链接服务器相互访问方法
  7. STM32定义数组到flash的指定位置
  8. 接口测试参数化详解(Jmeter)
  9. SQLCel匹配原数据信息,更新原数据所有信息并插入新数据的过程
  10. 并发编程 - 线程 - 1.线程queue/2.线程池进程池/3.异步调用与回调机制