直接上代码

from sklearn.datasets import make_moons
from numpy import *
import numpy as np
import operator
from os import listdir
import matplotlib.pyplot as plt
from sklearn.model_selection import train_test_split
from sklearn import preprocessing
#创建数据集
x, y = make_moons(n_samples=200, noise=0.15, random_state=0)
# Max-Min标准化
# 建立MinMaxScaler对象
minmax = preprocessing.MinMaxScaler()
# 标准化处理
data_minmax = minmax.fit_transform(x)# MaxAbs标准化
# # 建立MinMaxScaler对象
# maxabs = preprocessing.MaxAbsScaler()
# # 标准化处理
# data_maxabs = maxabs.fit_transform(x)
# print(data_maxabs)
x_train, x_test, y_train, y_test = train_test_split(data_minmax, y, test_size=0.25)def classify0(inX, dataSet, labels, k):dataSet = np.array(dataSet)labels = np.array(labels)dataSetSize = dataSet.shape[0]diffMat = tile(inX, (dataSetSize, 1)) - dataSetsqDiffMat = diffMat ** 2sqDistances = sqDiffMat.sum(axis=1)distances = sqDistances ** 0.5sortedDistIndicies = distances.argsort()classCount = {}for i in range(k):voteIlabel = labels[sortedDistIndicies[i]]classCount[voteIlabel] = classCount.get(voteIlabel, 0) + 1sortedClassCount = sorted(classCount.items(), key=operator.itemgetter(1), reverse=True)return sortedClassCount[0][0]def main():m = len(x_test)t=0for i in range(m):c = classify0(x_test[i], x_train, y_train, 3)if(c==y_test[i]):print ("%d:ture:the classifier came back with: %d,, the real answer is: %d" % (i,c,y_test[i]))t=t+1else:print("%d:false:the classifier came back with: %d,, the real answer is: %d" % (i,c, y_test[i]))print("\nthe total error rate is: %f" % ((m - t) / float(m)))
main()

KNN分类sklearn的make_moons数据集相关推荐

  1. Python实现knn分类算法(Iris 数据集)

    1.KNN分类算法 KNN分类算法(K-Nearest-Neighbors Classification),又叫K近邻算法,是一个概念极其简单,而分类效果又很优秀的分类算法. 他的核心思想就是,要确定 ...

  2. python KNN分类算法 使用鸢尾花数据集实战

    KNN分类算法,又叫K近邻算法,它概念极其简单,但效果又很优秀. 如觉得有帮助请点赞关注收藏啦~~~ KNN算法的核心是,如果一个样本在特征空间中的K个最相似,即特征空间中最邻近的样本中的大多数属于某 ...

  3. 机器学习实战5-sklearn训练SVM模型分类回归(make_moons数据集)

    先上公式推导吓吓萌新...嘻嘻 上图中两个决策边界(虚线)的间隔为,可以把它看做求两条平行直线的距离,只是这里是超直线罢了, 例如:两平行线方程分别是:Ax+By+C1=0和Ax+By+C2=0 则它 ...

  4. 莺尾花数据集--kNN分类

    Step1: 库函数导入 import numpy as np # 加载莺尾花数据集 from sklearn import datasets # 导入KNN分类器 from sklearn.neig ...

  5. 【KNN】使用KNN算法实现对iris数据集的分类

    ** 一.实验报告 ** 1. 实验目的:使用KNN算法实现对iris数据集的分类 2. 实验要求:(1)5次随机选取,对比分类准确率(2)探讨不同k值对分类准确率的影响 二.实验内容 1. 数据预处 ...

  6. sklearn学习之:(7)sklearn 自动生成数据集用法:make_hastie_10_2, make_circles, make_moons

    文章目录 一.sklearn.datasets.make_hastie_10_2 1. 产生数据: 2. 验证数据的正态性 3. 数据可视化 4. 代码 二.sklearn.datasets.make ...

  7. sklearn实现KNN分类算法

    sklearn实现KNN分类算法 Pyhthon Sklearn 机器学习库提供了 neighbors 模块,该模块下提供了 KNN 算法的常用方法,如下所示: 类方法 说明 KNeighborsCl ...

  8. Task09基于模拟数据集的KNN回归、基于马绞痛数据集的KNN数据预处理+KNN分类pipeline

    Task09 基于模拟数据集的KNN回归.基于马绞痛数据集的KNN数据预处理+KNN分类pipeline 一.学习内容概括 学习资料: 1.阿里云天池:https://tianchi.aliyun.c ...

  9. knn鸢尾花数据集java_机器学习——鸢尾花数据集(Knn分类)

    Iris数据集是常用的分类实验数据集,由Fisher, 1936收集整理.Iris也称鸢尾花卉数据集,是一类多重变量分析的数据集.数据集包含150个数据样本,分为3类,每类50个数据,每个数据包含4个 ...

最新文章

  1. lisp坐标一键生成_联排建筑一键生成?你的SU有外挂吧!
  2. win10装linux grub,在Win10下安装Ubuntu14.04安装并修复grub2
  3. Hibernate Annotation _List/Map
  4. db2 某个字段排序_sql字段排序 rank over
  5. 【Redis】11.Redis事务、事务锁
  6. linux select shell,linux之shell编程select和case用法
  7. 【数据库】Mysql的REPLACE()函数替换字符串
  8. DeFIL.org的资金池规模达168万枚FIL 已借出105万枚FIL
  9. 史上最强春节档来袭!Python 解读哪部影片值得一看?
  10. osgi java web_在Tomcat中使用Java Web应用程序的OSGi软件包
  11. Excel数据导入sql临时表操作步骤
  12. SQLite3数据库
  13. SQL and NOSQL
  14. JavaScript改变图片大小
  15. python中气泡图文字标签_Excel中制作气泡图及为气泡图的系列数据点添加文本数据标签...
  16. centOS7.9安装MySQL教程
  17. ArcEngine代码 数据导入
  18. 有n个人围成一圈 顺序排号 java_java有n个人围成一圈,顺序排号。从第一个人开始报数(从1到3报数),凡报到3的人退出...
  19. spring循环依赖让你更好的理解spring!!
  20. Springboot毕业设计毕设作品,心理评测系统 开题报告

热门文章

  1. 如何靠网络快速打造品牌
  2. 如何更改 Microsoft 帐户管理员名称
  3. (素材源码) 猫猫学IOS(五)UI之360等下载管理器九宫格UI
  4. QTableWidget自动调整列宽和行高
  5. 决定未来IT产业版图的“三国”纷争
  6. 如何建立一个微信公众号
  7. c++中文件的读处理多种方案解析
  8. 计算机学习 常用站点
  9. 设计模式:(策略模式)
  10. ASP.NET图书借阅管理系统