import numpy as np
import os
import operator
def img2vector(filename):
"""想不通为什么要用文本形式存数字,真是zz"""
ret_val = np.zeros((1,1024))
with open(filename,'r') as f:
lines = f.readlines()
for i1,line in enumerate(lines):
for i2,c in enumerate(line.strip()):
ret_val[0,i1*32+i2] = int(c)
return ret_val
def handwriting_class_test():
labels = []
# 返回该文件夹下文件或文件夹名字,升序
trainling_file_list = os.listdir('./trainingDigits')
# 初始化一个空的训练矩阵,放一个个数据
training_mat = np.zeros((len(trainling_file_list),1024))
# 把文件一个个提取
for i,item in enumerate(trainling_file_list):
# 某一个文件
file_name_str = item
# 文件去后缀
file_str = file_name_str.split('.')[0]
# 这个文件代表数字几
class_num_str = int(file_str.split('_')[0])
# 把数字标签放进去
labels.append(class
python3机器学习实战 kNN识别手写数字
最新推荐文章于 2020-12-03 01:11:21 发布