2016-05-24 2 views
0

Я просто пытаюсь запустить исходный код примера scikit-learn, но получаю согласованную ошибку. Код можно найти here - он имеет около 90 строк кода, поэтому было бы нецелесообразно вводить его здесь. Тем не менее, всякий раз, когда я бегу, я получаю сообщение об ошибке вызывается из Import sklearn с указанием:Ошибка numpy.dtype в коде машинного обучения (Python)

File "plot_outlier_detection.py", line 33, in <module> 
    from sklearn import svm 
File "/Library/Python/2.7/site-packages/sklearn/__init__.py", line 57, in <module> 
    from .base import clone 
File "/Library/Python/2.7/site-packages/sklearn/base.py", line 11, in <module> 
    from .utils.fixes import signature 
File "/Library/Python/2.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 

Основная ошибка является

ValueError: numpy.dtype has the wrong size, try recompiling 

и я смотрел на многие StackOverflow посты уже, говоря, что мне нужно обновить мой numpy, matplotlib, scipy, который я сделал уже несколько раз (обновить/удалить + установить с помощью pip/uninstall + install from source), но та же ошибка все еще появляется (я также переустановил sklearn) , Я думаю, что я знаю, почему это так:

Когда я использую Python в терминале и проверьте Numpy версию я получаю

import numpy 
numpy.version.version 
'1.9.2' 

Однако, когда я пытаюсь установки или обновления через пип - я получаю сообщение

numpy in /Library/Python/2.7/site-packages/numpy-1.11.0-py2.7-macosx-10.10-intel.egg 

Я прочитал в this StackOverflow запроса об этом, и они сказали, что использовать easy_install, как питон не читает с правильного пути в Маках (ИДК, может кто-то подтвердить?), так что я сделал это через easy_install, и получите это сообщение

Searching for numpy 
Best match: numpy 1.11.0 
Processing numpy-1.11.0-py2.7-macosx-10.10-intel.egg 
numpy 1.11.0 is already the active version in easy-install.pth 
Installing f2py script to /usr/local/bin 

Using /Library/Python/2.7/site-packages/numpy-1.11.0-py2.7-macosx-10.10-intel.egg 
Processing dependencies for numpy 
Finished processing dependencies for numpy 

который является тем же самым. Я не знаю, что происходит. Может кто-нибудь мне помочь?

Для справки версий:

Python - 2.7.10 
Numpy - 1.9.2 
Matplotlib - 1.4.3 
Scipy - 0.13.0b1 

Остальные версий также не до date..but они получают от версии Numpy бытия уточненного.

ответ

0

Я установил Anaconda (2.5.0) на моем Ubuntu (14,04) С Anaconda 2.5.0 мои версии:

питон 2.7.11

Numpy 1.10.4

SciPy 0.17.0

Я скачать код по ссылке, и он прекрасно работает на моей машине

Может вы пытаетесь установить Anaconda и посмотреть, не решит ли он ваши проблемы? https://www.continuum.io/downloads

+0

он работает в Anaconda, но я предпочел бы использовать не-приложение для написания моего кода (то есть через терминал/vim). Я буду использовать это как временное решение на данный момент, но я все равно хотел бы знать, как исправить эту проблему. – Kai

+0

Что вы подразумеваете под «Я бы предпочел использовать не-приложение для написания моего кода (т. Е. Через терминал/vim)»? – Yaron

+0

Anaconda сохраняет сложность установки самых современных версий numpy, pandas, scipy и т. Д., Например. на официальном веб-сайте pandas они рекомендовали установить его с помощью anaconda: «http://pandas.pydata.org/pandas-docs/stable/install.html - Самый простой способ для большинства пользователей установить панды - установить его как часть дистрибутива Anaconda », аналогичная рекомендация в случае scipy - https://www.scipy.org/install.html – Yaron