所以我刚刚从网站上下载了nltk
模块并进行了安装。但是当我在python控制台上运行import nltk
时,我收到了这个错误。有谁能够帮我?我在网上搜索了这个错误,但无济于事。
>>> import nltk
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/nltk/__init__.py", line 128, in <module>
from nltk.chunk import *
File "/usr/local/lib/python2.7/dist-packages/nltk/chunk/__init__.py", line 157, in <module>
from nltk.chunk.api import ChunkParserI
File "/usr/local/lib/python2.7/dist-packages/nltk/chunk/api.py", line 13, in <module>
from nltk.parse import ParserI
File "/usr/local/lib/python2.7/dist-packages/nltk/parse/__init__.py", line 79, in <module>
from nltk.parse.transitionparser import TransitionParser
File "/usr/local/lib/python2.7/dist-packages/nltk/parse/transitionparser.py", line 21, in <module>
from sklearn.datasets import load_svmlight_file
File "/home/jaydeep/.local/lib/python2.7/site-packages/sklearn/__init__.py", line 57, in <module>
from .base import clone
File "/home/jaydeep/.local/lib/python2.7/site-packages/sklearn/base.py", line 11, in <module>
from .utils.fixes import signature
File "/home/jaydeep/.local/lib/python2.7/site-packages/sklearn/utils/__init__.py", line 10, in <module>
from .murmurhash import murmurhash3_32
File "numpy.pxd", line 155, in init sklearn.utils.murmurhash (sklearn/utils/murmurhash.c:5029)
**ValueError: numpy.dtype has the wrong size, try recompiling**
我尝试重新安装numpy
和nltk
,但我仍然遇到同样的错误
答案 0 :(得分:2)
当您安装了旧版本的numpy时,通常会导致此错误。
尝试使用pip升级它:
sudo pip install numpy --upgrade
如果已经安装了较新的numpy 并且仍然可以使用,则可能有两个版本的numpy ,当您通过python-console访问它时指向旧版本。这在此解决:similar issue
由于sklearn 使用的 openblas / atlas,你也可以得到这个。根据scikit-learn高级安装:
使用openblas可以在某些scikit-learn模块中加速,但可以 在openblas版本0.2.8-4之前冻结joblib / multiprocessing,所以 除非你知道自己在做什么,否则不建议使用它。
如果你 我想使用openblas,然后替换地图集只需要一对 命令。 必须删除Atlas,否则numpy可能无效。
答案 1 :(得分:0)
没关系。我所要做的只是卸载scikit-learn
,它运作顺利。
我不明白为什么会这样。如果有人能对此有所了解,我们将不胜感激。
答案 2 :(得分:0)
最近我在Ubuntu中遇到了同样的问题。尝试升级numpy,卸载了scikit-learn。什么都没有。刚刚重新启动系统并开始工作。