txt文件中是1000行数据,每一行有三个特征,最后一个是标签。
格式如下图:
现要将数据提取出特征和标签,并在最后利用提取到的两个特征绘制了散点图。代码如下:
1 from numpy import * 2 import matplotlib 3 import matplotlib.pyplot as plt 4 5 def file2matrix(filename): 6 fr=open(filename) 7 arrayOLines=fr.readlines()#读取文件 8 numberOFLines=len(arrayOLines)#文件行数 9 returnMat=zeros((numberOFLines,3))#文件行数*3的矩阵 10 classLabelVector=[] 11 index=0 12 for line in arrayOLines: 13 line=line.strip()#截掉回车符 14 listFormLine=line.split(‘\t‘)#按照制表符划分 15 returnMat[index,:]=listFormLine[0:3]#取每行的前三个元素 16 classLabelVector.append(int(listFormLine[-1]))#最后一个元素作为标签 17 index+=1 18 return returnMat,classLabelVector 19 20 datingDataMat,datingLabels=file2matrix(‘datingTestSet2.txt‘) 21 fig=plt.figure()#Figure实例 22 ax=fig.add_subplot(111)#绘制子图,三个参数分别表示子图总行数,总列数以及子图位置,本例只画了一个。 23 ax.scatter(datingDataMat[:,1],datingDataMat[:,2],15.0*array(datingLabels),15.0*array(datingLabels))#画散点图,利用第二列及第三列数据。 24 plt.show()
散点图:
原文:https://www.cnblogs.com/glam/p/11910248.html