window下python安装包问题小结
你可能遇到的问题包括:
ImportError: No module named sklearn 未安装sklearn包
ImportError: DLL load failed: 找不到指定的模块
ImportError: DLL load failed: The specified module could not be found
Microsoft Visual C++ 9.0 is required Unable to find vcvarsall.bat
Numpy Install RuntimeError: Broken toolchain: cannot link a simple C program
ImportError: numpy.core.multiarray failed to import
ImportError: cannot import name __check_build
ImportError: No module named matplotlib.pyplot
一. 安装过程
最早使用"pip install scikit-learn"命令安装的Scikit-Learn程序,并没有注意需要安装Numpy、Scipy、Matlotlib,然后在报错"No module named Numpy"后,我接着使用PIP或者下载exe程序安装相应的包,同时也不理解安装顺序和版本的重要性。其中最终都会报错" ImportError: DLL load failed: 找不到指定的模块",此时我的解决方法是:
错误:sklearn ImportError: DLL load failed: 找不到指定的模块
重点:安装python第三方库时总会出现各种兼容问题,应该是版本问题,版本需要一致。
第一步:卸载原始版本,包括Numpy、Scipy、Matlotlib、Scikit-Learn
pip uninstall scikit-learn
pip uninstall numpy
pip uninstall scipy
pip uninstall matplotlib
第二步:不使用"pip install package"或"easy_install package"安装,或者去百度\CSDN下载exe文件,而是去到官网下载相应版本。
http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy
http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy
http://www.lfd.uci.edu/~gohlke/pythonlibs/#matplotlib
http://www.lfd.uci.edu/~gohlke/pythonlibs/#scikit-learn
安装过程中最重要的地方就是版本需要兼容。
PS:不推荐使用"pip install numpy"安装或下载如"numpy-MKL-1.8.0.win-amd64-py2.7.exe"类似文件。
第三步:去到Python安装Scripts目录下,再使用pip install xxx.whl安装,先装Numpy\Scipy\Matlotlib包,再安装Scikit-Learn。
其中我的python安装路径"G:\software\Program software\Python\python insert\Scripts",同时四个whl文件安装核心代码:
pip install G:\numpy+scipy+matplotlib\numpy-1.10.2-cp27-none-win_amd64.whl
pip install G:\numpy+scipy+matplotlib\scikit_learn-0.17-cp27-none-win_amd64.whl
第四步:此时配置完成,关键是Python64位版本兼容问题和Scripts目录。
二. 测试运行环境
Scikit-Learn是基于python的机器学习模块,基于BSD开源许可。Scikit-learn的基本功能主要被分为六个部分,分类,回归,聚类,数据降维,模型选择,数据预处理,具体可以参考官方网站上的文档。
NumPy(Numeric Python)系统是Python的一种开源的数值计算扩展,一个用python实现的科学计算包。它提供了许多高级的数值编程工具,如:矩阵数据类型、矢量处理,以及精密的运算库。专为进行严格的数字处理而产生。
内容包括:1、一个强大的N维数组对象Array;2、比较成熟的(广播)函数库;3、用于整合C/C++和Fortran代码的工具包;4、实用的线性代数、傅里叶变换和随机数生成函数。numpy和稀疏矩阵运算包scipy配合使用更加方便。
SciPy (pronounced "Sigh Pie") 是一个开源的数学、科学和工程计算包。它是一款方便、易于使用、专为科学和工程设计的Python工具包,包括统计、优化、整合、线性代数模块、傅里叶变换、信号和图像处理、常微分方程求解器等等。
Matplotlib是一个Python的图形框架,类似于MATLAB和R语言。它是python最著名的绘图库,它提供了一整套和matlab相似的命令API,十分适合交互式地进行制图。而且也可以方便地将它作为绘图控件,嵌入GUI应用程序中。
第一个代码:斜线坐标,测试matplotlib
import matplotlib
import numpy
import scipy
import matplotlib.pyplot as pltplt.plot([1,2,3])
plt.ylabel('some numbers')
plt.show()
第二个代码:桃心程序,测试numpy和matplotlib
代码参考:Windows 下 Python easy_install 的安装 - KingsLanding
import numpy as np
import matplotlib.pyplot as pltX = np.arange(-5.0,5.0, 0.1)
Y = np.arange(-5.0,5.0, 0.1)x, y = np.meshgrid(X, Y)
f = 17* x ** 2 - 16 * np.abs(x) * y +17 * y ** 2 - 225fig = plt.figure()
cs = plt.contour(x, y, f,0, colors = 'r')
plt.show()
第三个程序:显示Matplotlib强大绘图交互功能
代码参考:Python-Matplotlib安装及简单使用 - bery
import numpy as np
import matplotlib.pyplot as pltN = 5
menMeans = (20,35, 30,35, 27)
menStd = (2,3, 4,1, 2)ind = np.arange(N) # the x locationsfor the groups
width = 0.35 # the width of the barsfig, ax = plt.subplots()
rects1 = ax.bar(ind, menMeans, width, color='r', yerr=menStd)womenMeans = (25,32, 34,20, 25)
womenStd = (3,5, 2,3, 3)
rects2 = ax.bar(ind+width, womenMeans, width, color='y', yerr=womenStd)# add some
ax.set_ylabel('Scores')
ax.set_title('Scores by group and gender')
ax.set_xticks(ind+width)
ax.set_xticklabels( ('G1','G2', 'G3','G4', 'G5') )ax.legend( (rects1[0], rects2[0]), ('Men','Women') )def autolabel(rects):# attach some text labelsforrect in rects:height = rect.get_height()ax.text(rect.get_x()+rect.get_width()/2.,1.05*height, '%d'%int(height),ha='center', va='bottom')autolabel(rects1)
autolabel(rects2)plt.show()
第四个代码:矩阵数据集,测试sklearn
from sklearn import datasets
iris = datasets.load_iris()
digits = datasets.load_digits()
print digits.data
第五个代码:计算TF-IDF词语权重,测试scikit-learn数据分析
参考代码:http://blog.csdn.net/liuxuejiang158blog/article/details/31360765
# coding:utf-8
__author__ = "liuxuejiang"
import jieba
import jieba.posseg as pseg
import os
import sys
from sklearn import feature_extraction
from sklearn.feature_extraction.textimport TfidfTransformer
from sklearn.feature_extraction.textimport CountVectorizerif __name__ == "__main__":corpus=["我 来到 北京 清华大学", #第一类文本切词后的结果 词之间以空格隔开"他 来到 了 网易 杭研 大厦", #第二类文本的切词结果"小明 硕士 毕业 与 中国 科学院", #第三类文本的切词结果"我 爱 北京 天安门"] #第四类文本的切词结果#该类会将文本中的词语转换为词频矩阵,矩阵元素a[i][j] 表示j词在i类文本下的词频vectorizer=CountVectorizer()#该类会统计每个词语的tf-idf权值transformer=TfidfTransformer()#第一个fit_transform是计算tf-idf,第二个fit_transform是将文本转为词频矩阵tfidf=transformer.fit_transform(vectorizer.fit_transform(corpus))#获取词袋模型中的所有词语word=vectorizer.get_feature_names()#将tf-idf矩阵抽取出来,元素a[i][j]表示j词在i类文本中的tf-idf权重weight=tfidf.toarray()#打印每类文本的tf-idf词语权重,第一个for遍历所有文本,第二个for便利某一类文本下的词语权重fori in range(len(weight)):print u"-------这里输出第",i,u"类文本的词语tf-idf权重------"forj in range(len(word)):print word[j],weight[i][j]
三. 其他错误解决方法
这里虽然讲解几个安装时遇到的其他错误及解决方法,但作者更推荐上面的安装步骤。
在这之前,我反复的安装、卸载、升级包,其中遇到了各种错误,改了又改,百度了又谷歌。常见PIP用法如下:
* pip install numpy --安装包numpy
* pip uninstall numpy --卸载包numpy
* pip show --files PackageName --查看已安装包
* pip list outdated --查看待更新包信息
* pip install --upgrade numpy --升级包
* pip install -U PackageName --升级包
* pip search PackageName --搜索包
* pip help --显示帮助信息
ImportError: numpy.core.multiarray failed to import
python安装numpy时出现的错误,这个通过stackoverflow和百度也是需要python版本与numpy版本一致,解决的方法包括"pip install -U numpy"升级或下载指定版本"pip install numpy==1.8"。但这显然还涉及到更多的包,没有前面的卸载下载安装统一版本的whl靠谱。
Microsoft Visual C++ 9.0 is required(unable to find vcvarsall.bat)
因为Numpy内部矩阵运算是用C语言实现的,所以需要安装编译工具,这和电脑安装的VC++或VS2012有关,解决方法:如果已安装Visual Studio则添加环境变量VS90COMNTOOLS即可,不同的VS版本对应不同的环境变量值:
Visual Studio 2010 (VS10)设置 VS90COMNTOOLS=%VS100COMNTOOLS%
Visual Studio 2012 (VS11)设置 VS90COMNTOOLS=%VS110COMNTOOLS%
Visual Studio 2013 (VS12)设置 VS90COMNTOOLS=%VS120COMNTOOLS%
但是这并没有解决,另一种方法是下载Micorsoft Visual C++ Compiler for Python 2.7的包。
PS:这些问题基本解决方法使用pip升级、版本一致、重新下载相关版本exe文件再安装。
转自http://www.cnblogs.com/moady/p/5734058.html
window下python安装包问题小结相关推荐
- linux下python安装包 3.7.1
linux下python安装包 3.7.1 百度网盘链接:https://pan.baidu.com/s/12mU27c84dQ0Clf-gjenOrg 提取码:jg0r
- python安装包问题小结
你可能遇到的问题包括: ImportError: No module named sklearn 未安装sklearn包 ImportError: DLL load failed: 找不到指定的模块 ...
- linux下python安装包_Linux服务器中安装python包管理工具pip
pip是python的包管理工具,python的强大之处除了在于语法的简练,还有就是对众多的库支持了. 1.下载pip包管理工具 链接地址:https://pypi.python.org/pypi/p ...
- python安装包_在python官网打不开的情况下获取获取官方最新安装包
不知道有没有朋友在下载python最新安装包的时候,打不开python官网,我是遇见过,就像我们找东西时一样,需要的时候网站打不开,不需要了秒开,后来小编查阅各种资料,咨询了好几个大佬,终于得知了一个 ...
- python 安装包查询_Linux系统下查找安装包所在目录
Linux系统下查找安装包所在目录 想知道Linux系统下安装了哪些软件包,以及软件包安装在哪个目录下,可以用以下命令 1. which which命令查找出相关命令是否已经在搜索路径中,例子如下: ...
- python安装包_迈出Python学习第一步:Python开发环境的下载与安装
所谓"磨刀不误砍柴工"."工欲善其事,必先利其器",都在告诉我们一个道理:要做好一个事情,事先做好充分的准备工作是非常重要的.所以在我们正式学习用Python编 ...
- python安装包_Python开发环境搭建
本文是基于最新的版本python3的,俗话说:工欲善其事必先利其器.做自动化测试的第一步必须会搭建基本的自动化测试环境,掌握python基本的语法和一个IDE工具来进行开发,下边会详细介绍怎么搭建py ...
- python 安装包时出现红字_Python从入门到就业-1.1节:安装Python
教程引言: 系统地讲解计算机基础知识,Python的基础知识, 高级知识,web开发框架,爬虫开发,数据结构与算法,nginx, 系统架构.一步步地帮助你从入门到就业. 1.1.1 在windows中 ...
- python 安装包时出现红字_你好啊!Python,初次见面,多多指教
[人生苦短,我用python]是当下非常流行的一句口头禅.那我们就看下如何在自己的电脑上运行Python程序. 要开始在自己的计算机上使用Python来学习编程,我们需要经过下面的4个步骤. 查看自己 ...
最新文章
- JSON数据的HTTP Header应该怎么标记?
- python 条形图-可视化库-Matplotlib-条形图(第四天)
- 好程序员web前端分享Nodejs学习笔记之Stream模块
- python 在内网windows环境下pip三方包
- 【Google官方教程】第三课:缓存Bitmap
- 音视频技术开发周刊 | 234
- java 刷新jtextarea_Java JTextArea不能实时刷新的问题
- 干货来袭!游戏建模初学者该怎样学习?
- python找思路_python 爬取贝壳的一些思路和方法设计(用地址找到小区名字)
- Spring学习(二)代理模式(静态代理、动态代理)、Spring AOP
- LINUX移植——LED驱动移植
- 移远NBIOT模组BC26 OpenCPU对接OneNET详细讲解
- 用超级鹰来识别B站图片验证
- 伊通一中2021高三高考成绩查询,吉林四平最好的4所高中,第1名一骑绝尘,看看有没有你的母校?...
- Laravel中pluck的使用——返回指定的字段值信息列表
- 使用DISM启用或禁用Windows功能
- 如何选择企业级数据存储DAS、NAS和SAN
- 你不知道的浏览器页面渲染机制
- 系统自带测试软件,Windows7自带软件测试RAID系统
- 20170711 通过阿里云与国家气象局合作的api读取历史辐照数据
热门文章
- 初学编程丨从零开始进修编程的基本路线,BAT程序员亲手总结!
- 推荐大家......必看的几部超级鬼片
- 【word】和【excel】小技巧总结
- 流行音乐即兴伴奏——常用和弦
- Mdoi R2 洛谷4月月赛I
- 大学计算机信息技术教程2020版知识点,大学计算机信息技术教程习题集.doc
- 如何更改计算机上面的图表形式,excel表格数据转换图形-怎么把EXCEL中的一组数字转换成图表形式...
- 蓝牙人员定位追踪系统解决方案,蓝牙定位技术应用全面-新导智能
- 【JY】知名显式动力学求解器Radioss宣布开源
- 【软件测试】软考-2022软件评测师考试心得