【机器学习实战】学习代码分析(3)
reload问题
python版本号原来为2.7一直在用idle进行编译
后来师兄推荐了Spyder,但是默认编程了3.0版本的python
所以原来在idle上的reload文件语句出现报错
NameError: name 'reload' is not defined
感谢文章name’reload’undefined
以下为解决措施:
import importlib
importlib.reload(kNN1)
使用Matplotlib创建散点图
import kNN1
datingDataMat,datingLabels=kNN1.file2matrix('datingTestSet2.txt')
import matplotlib
import matplotlib.pyplot as plt
fig=plt.figure()
ax=fig.add_subplot(111)
#建立长:高=1:1的画布
ax.scatter(datingDataMat[:,1],datingDataMat[:,2],
15.0*array(datingLabels),15.0*array(datingLabels))
#datingDataMat[:,1]表示第一列所有值,datingDataMat[:,2],表示第二列所有值
#分别表示特征值“玩视频游戏所耗时间百分比”和“每周所消费的冰淇淋公升数”。
#画出的点为这两者的作为横纵坐标的点
# 15.0*array(datingLabels),15.0*array(datingLabels)定义不同的喜好者(1,2,3)呈现出的点为不同的颜色
plt.show()
如果只是这么在Spyder上运行的话,会提示:
NameError: name 'array' is not defined
需要补充前提
from numpy import *