knn代码
2015-09-15 22:39
513 查看
import operator import numpy as np class KNN: def __init__(self, dataSet, labels): self.minVals = dataSet.min(0) self.ranges = dataSet.max(0) - self.minVals self.normData = (dataSet - self.minVals) / self.ranges self.labels = labels def classify(self, inX, k): diffs = np.array(self.normData) - (inX - self.minVals) / self.ranges; distances = (diffs ** 2).sum(axis = 1) ** 0.5; indexes = distances.argsort(); classCount = {} for i in range(k): label = self.labels[indexes[i]] classCount[label] = classCount.get(label, 0) + 1 sortedClassCount = sorted(classCount.iteritems(), key = operator.itemgetter(1), reverse = True) return sortedClassCount[0][0]
相关文章推荐
- 决策树代码
- 朴素贝叶斯代码实现
- 小C的故事(快速学C语言,,,极速版!)
- 【leetcode】Valid Parentheses【java】
- 详解CXF与Spring的整合
- JAVA中复杂对象调用构造器顺序
- java设计模式第10弹--享元模式
- javaIO体系图(2015年9月15日)
- C#多线程编程
- 《VC++就业培训宝典之MFC视频教程》学习笔记
- python属性
- 简单选择排序的C++实现
- c# 屏蔽快捷键
- java__IO
- 360公司 2016校园招聘在线笔试编程题
- discrete adaboost的C++实现
- discrete adaboost的C++实现
- 2016华为软件开发题目讲解
- 将studio项目 转换为eclipse项目
- 将studio项目 转换为eclipse项目