1.首先需要 安装numpy,matplotlib包
可以使用pip -install 来安装
2.分析预测步骤
1>收集数据,可以参考 https://blog.csdn.net/sinat_29957455/article/details/79123394
也可以在其他数据库中自行下载https://www.zhihu.com/question/63383992/answer/222718972
2>解析文本数据(特征数据和标签数据)
K-邻近分类是通过特征值近似,来确定标签的一种算法
3>将所有特征数据归一
通过单个特征数据中,temp_value=max_value-min_value,然后用每一个特征值/temp_value,
将所有的特征值变为0~1之间的数.
4>加权特征值
因为所有特征不可能是,完全相同地取影响最后的结果(标签).
5>测试当前加权特征值算法的错误率
6>反复(4.5)步可以得到一个在当前这个数据集中误差最小的加权值
7>投入使用
解析文本代码
def parse_file(filename): fr = open(filename) # 打开数据集文件 array_lines = fr.readlines() # 读取所有文件,返回list # ['40920\t8.326976\t0.953952\t3\n', '14488\t7.153469\t1.673904\t2\n'] lens = len(array_lines) # 得到行数 feature_array = zeros((lens, 3)) # 得到一个lens*3的元素全为0的ndarray labels = [] # 准备存放标签 index = 0 for line in array_lines: line = line.strip() # 1148 0.000000 0.332365 2 # 10062 3.931299 0.487577 2 得到这样的数据 list_line = line.split('\t') # ['14488', '7.153469', '1.673904', '2'] # ['26052', '1.441871', '0.805124', '1'] 得到这样的数据 feature_array[index, :] = list_line[0:3] # 将前面三列存入特征ndarray中 labels.append(int(list_line[-1])) #