分析数据:使用Matplotlib创建散点图

>>> import kNN
>>> from imp import reload
>>> reload(kNN)
<module 'kNN' from 'E:\\Python\\kNN.py'>
>>> datingDataMat,datingLabels = kNN.file2matrix('datingTestSet2.txt')
>>> import matplotlib
>>> import matplotlib.pyplot as plt
>>> fig = plt.figure()
>>> ax = fig.add_subplot(111)
>>> ax.scatter(datingDataMat[:,1],datingDataMat[:,2])
<matplotlib.collections.PathCollection object at 0x09EE57B0>
>>> plt.show()

没有样本类别标签,难以分辨图中的点究竟属于哪个样本分类,使用的是datingDataMat矩阵的第二、第三列数据
这里写图片描述

>>> import kNN
>>> from imp import reload
>>> reload(kNN)
<module 'kNN' from 'E:\\Python\\kNN.py'>
>>> datingDataMat,datingLabels = kNN.file2matrix('datingTestSet2.txt')
>>> import matplotlib
>>> import matplotlib.pyplot as plt
>>> fig = plt.figure()
>>> ax = fig.add_subplot(111)
>>> ax.scatter(datingDataMat[:,1],datingDataMat[:,2],15.0*array(datingLabels),15.0*array(datingLabels))
Traceback (most recent call last):
  File "<pyshell#28>", line 1, in <module>
    ax.scatter(datingDataMat[:,1],datingDataMat[:,2],15.0*array(datingLabels),15.0*array(datingLabels))
NameError: name 'array' is not defined
>>> 
>>> import kNN
>>> datingDataMat,datingLabels = kNN.file2matrix('datingTestSet2.txt')
>>> import matplotlib
>>> import matplotlib.pyplot as plt
>>> fig = plt.figure()
>>> ax = fig.add_subplot(111)
>>> from numpy import *
>>> ax.scatter(datingDataMat[:,1],datingDataMat[:,2],15.0*array(datingLabels),15.0*array(datingLabels))
<matplotlib.collections.PathCollection object at 0x091C18B0>
>>> plt.show()

看了别人的博客,书上之前体现了,后来没有导入numpy
from numpy import *很关键的一步

比较容易区分数据点从属类别,但很难得出结论性消息
这里写图片描述
从三个矩阵特性,每年获得的飞行常客里程数,玩视频游戏所耗时间百分比,每周消费的冰淇淋公升数来区分这个人是不喜欢的人、魅力一般的人、极具魅力的人,然后发现每年获得的飞行常客里程数和每年获得的飞行常客里程数更容易区分这个人是喜欢或者有没有魅力的人

猜你喜欢

转载自blog.csdn.net/qq_42799920/article/details/81225373