from numpy import * import operator from os import listdir def file2matrix(filename): fr= open(filename); #打开文件 arrayline=fr.readlines(); #把文件的每一行都读进去 numberoflines=len(arrayline); #有多少行 returnMat=zeros((numberoflines,3)); #创建0矩阵num*3 classlabelvector=[]; index=0; for line in arrayline: line=line.strip(); #去掉开头结尾的 listFromLine=line.split(' '); #以 为分隔 returnMat[index,:]=listFromLine[0:3]; #把每行的3个都放进去 ty=listFromLine[-1]; #把最后一个放进去 ans=0; if ty=='largeDoses': ans=3; elif ty=='smallDoses': ans=2; else: ans=1; classlabelvector.append(ans); index+=1; return returnMat,classlabelvector; #返回数据集合和最后的类别矩阵