好久没有更新过Python和机器学习的内容了,现在把运行《机器学习实战》第一个例子时遇到的依赖库缺失问题,做一下解决说明。
总体而言,你需要先后下载并安装numpy+matplotlib+scipy+dateutil+pyparsing等这五个库。在下载的时候你会遇到.exe文件或者.whl文件,.exe当然是双击安装啦,而.whl文件相当于一种压缩文件(类似于zip),该文件需要pip来安装,下面是安装方法:
1)打开cmd,进入Python的脚本目录,我的是3.4版本的。
D:\Program Files (x86)\Python34\Scripts,发现目录下有关于pip的可执行程序,pip.exe pip3.4.exe pip3.exe 使用哪个都可以
2)使用命令pip3.4 install "whl文件路径",对whl进行安装。
3)看到Successfully 说明安装成功啦,先小小的高兴一下,下面开始一步步安装各种依赖库了。
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1:numpy
python中用于科学计算的基础安装包。
下载路径:http://sourceforge.net/projects/numpy/
点击 DOWNLOAD 下面的 browse all files,浏览你需要的文件,下载与你的Python版本和运行平台(win or Linux)相匹配的文件,这里我的选择是Python3.4 win 32文件
这是一个.exe可执行文件,双击安装即可。
2:matplotlib
Python中用于图形绘制的安装包。
下载路径:http://matplotlib.org/downloads.html
这里也有很多的版本,我选择的是Python3.4 win32版本。
安装完,编译包含绘图指令的程序,系统会提醒你缺少six组件(error : No module named six ),其实不用安装six,只需安装scipy库,其中已经包含了six库。
3:scipy
Python中用于科学计算和工程计算的工具,SciPy包含的模块有最优化、线性代数、积分、插值、特殊函数、快速傅里叶变换、信号处理和图像处理、常微分方程求解和其他科学与工程中常用的计算(见wiki)
下载路径:http://sourceforge.net/projects/scipy/files/scipy/
同样选择你需要的版本,通常选择最新版本比较好,我的下载地址:
安装完,别忘了还有six库没有处理呢!
在 D:\Program Files (x86)\Python34\Lib\site-packages\scipy\lib 中搜索six相关文件,如下图
将其中的三个文件拷贝到文件夹 D:\Program Files (x86)\Python34\Lib\site-packages 即可
six.py
six.cpython-34.pyc
six.cpython-34.pyo
编译,发现程序提示缺少 dateutil 组件,下载安装吧!
4:dateutil
Python中用于日期格式的工具包,matplotlib库的依赖库。
下载地址:https://pypi.python.org/pypi/python-dateutil
选择win版本的执行代码。
https://pypi.python.org/packages/any/p/python-dateutil/python_dateutil-2.4.2-py2.py3-none-any.whl.asc
这是一个.whl文件,用上述的pip安装即可,不再重复啦!
编译,发现程序提示缺少pyparsing组件,有没有疯掉了,继续安装,最后一个了!
5:pyparsing
Python中用于语法解析的安装包。
下载地址:http://sourceforge.net/projects/pyparsing/
点击 DOWNLOAD 下面的 browse all files,浏览你需要的文件,下载与你的Python版本和运行平台(win or Linux)相匹配的文件,这里我的选择是Python3.4 win 32文件
http://sourceforge.net/projects/pyparsing/files/pyparsing/pyparsing-2.0.3/pyparsing-2.0.3.win32-py3.4.exe/download
全部安装完成啦!运行Python程序,成功!庆祝一下吧!