使用K邻近算法改进约会网站配对效果——文本文件解析到numpy,问题及解决记录
def file2matrix(filename):
#打开文件并得到文件行数
fr = open(filename)
arrayOLines = fr.readlines() # 一次读取整个文件,自动将文件内容分析成一个行的列表
numberOfLines = len(arrayOLines) # get the number of lines in the file
#创建返回的numPy矩阵
returnMat = np.zeros((numberOfLines,3)) # 文件有几行就是几行,设置为3列(可调)
classLabelVector = [] # 存储位置
fr = open(filename)
index = 0
#解析文件数据到列表
for line in fr.readlines():
line = line.strip() # 使用函数line.strip()截取掉所有的回车字符(去掉首尾空格)
listFromLine = line.split('\t') # 使用tab字符\t将上一步得到的整行数据分割成一个元素列表
returnMat[index,:] = listFromLine[0:3] # #前3个列表元素是所需特征,取出填充returnMat
#是1 or 2 or 3,填入得到分类标签向量
classLabelVector.append(int(listFromLine[-1])) #使用索引值-1表示列表中的最后