Встановлення SciPy з допомогою pip


207

Можна встановити NumPy з допомогою pip за допомогою pip install numpy.

Чи є аналогічна можливість з SciPy ? (Робити pip install scipyце не працює.)


Оновлення

Пакет SciPy тепер доступний для установки pip!


3
Можливо, ви б хотіли переглянути прийняту відповідь (можливо, до крапок?). Я не думаю, що встановлення через git має бути кращим методом! :)
Енді Хейден

10
Це ще раз актуально, тому що останні кілька версій не можуть простоpip install
erikbwork

Відповіді:


106

Спроба easy_installвказати на проблему з їх переліком у індексі пакету Python , який шукає піп.

easy_install scipy
Searching for scipy
Reading http://pypi.python.org/simple/scipy/
Reading http://www.scipy.org
Reading http://sourceforge.net/project/showfiles.php?group_id=27747&package_id=19531
Reading http://new.scipy.org/Wiki/Download

Однак все не втрачено; pipможна встановити із сховищ Subversion (SVN), Git , Mercurial та Bazaar . SciPy використовує SVN:

pip install svn+http://svn.scipy.org/svn/scipy/trunk/#egg=scipy

Оновлення (12-2012):

pip install git+https://github.com/scipy/scipy.git

Оскільки NumPy - це залежність, її слід встановити також.


1
Блискуче! Що для мене це: pip install svn+http://svn.scipy.org/svn/scipy/trunk Зауважте, що, слідуючи stackoverflow.com/questions/651305 , ви також можете вибрати дану редакцію (скажімо, 5839, на яку я вважаю, це остання стабільна версія, 0.7.1), використовуючи: pip install http://svn.scipy.org/svn/scipy/!svn/bc/5839/trunk/ хоча я не перевіряв що ...
Олів'є Верд'є

+1 для довговічності та міцності. Це все ще працює для мене через 2 роки на OSX 10.8.2 та python 2.7. Стандарт pip install scipyне працює під час компіляції fortan (навіть після успішного brew install gfortranта pip install numpy). Установка svn ухиляє @ lokalhort's github repo install з python3 або @ elaichi залежністю apt-gets для ubuntu.
варильні панелі

2
Імовірно, це означає, що ви отримуєте кровоточиву крайню шипу, а не останню стабільну реліз.
Енді Хайден

Не працювали для мене. Але це здається хорошим рішенням. Я думаю, у мене виникають інші проблеми, і саме тому це рішення не працює.
Amir Md Amiruzzaman

214

Необхідна умова:

sudo apt-get install build-essential gfortran libatlas-base-dev python-pip python-dev
sudo pip install --upgrade pip

Фактичні пакети:

sudo pip install numpy
sudo pip install scipy

Необов’язкові пакети:

sudo pip install matplotlib   OR  sudo apt-get install python-matplotlib
sudo pip install -U scikit-learn
sudo pip install pandas

src


2
Примітка: це важливо для складання :)
Енді Хейден

30
sudo pip installне є закономірністю, яку повинна містити відповідь загального призначення. Зазвичай ти хочеш pip installувійти у свою віртуолв.
erikbwork

1
Це вирішило моє питання, дякую! Для користувачів Mac libatlas-base-devпостачається з ОС і gfortranможе бути встановлений за допомогою пакету ( https://gcc.gnu.org/wiki/GFortranBinariesMacOS )
robodasha

Повторюючи erikb85, один повинен НЕ бути в звичку sudo pip installING пітона LIBS. Використовуйте virtualenv та virtualenvwrapper . Моя звична картина sudo apt-get install python-pipдотримується наступного sudo pip install virtualenvwrapper. Після цього все переходить у віртуаленв.
DanielSank

Також переконайтеся, що у вас є достатня кількість пам’яті (тобто ви працюєте з інсталяцією на якийсь VPS) та створіть файл swap, якщо потрібно, Повідомлення про помилку в такому випадку є приблизно таким: c++: internal compiler error: Killed (program cc1plus) error: Command "c++ -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -fPIC -D__STDC_FORMAT_MACROS=1 -I/usr/lib/python2.7/dist-packages/numpy/core/include -I/usr/include/python2.7 -c scipy/sparse/sparsetools/csr_wrap.cxx -o build/temp.linux-x86_64-2.7/scipy/sparse/sparsetools/csr_wrap.o" failed with exit status 4
Томіслав Муїк

33

В Ubuntu 10.04 (Lucid) я міг успішно pip install scipy(в рамках virtualenv) після встановлення деяких його залежностей, зокрема:

$ sudo apt-get install libamd2.2.0 libblas3gf libc6 libgcc1 libgfortran3 liblapack3gf libumfpack5.4.0 libstdc++6 build-essential gfortran libatlas-sse2-dev python-all-dev

5
це 'libatlas-base-dev', а не 'libatlas-sse2-dev'
madCode

1
$ Sudo APT-отримати установку libamd2.2.0 libblas3gf libc6 libgcc1 libgfortran3 liblapack3gf libumfpack5.4.0 libstdc ++ 6 моделювальні істотно gfortran libatlas-DEV libatlas3 база пітон пітон-все-DEV Gcc г ++ libblas-DEV liblapack-DEV
elimisteve

в ubuntu 12.04:sudo aptitude install python-scipy
Ciro Santilli 郝海东 冠状 病 六四 事件 法轮功

14
Краще, якщо ви хочете використовувати останню версію scipy - це зробити, sudo apt-get build-dep python-scipyа потім встановити scipy з pip.
Ібрагім

22

Щоб встановити scipy на Windows, дотримуйтесь цих інструкцій: -

Крок 1. Натисніть посилання http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy, щоб завантажити файл scipy .whl (наприклад, scipy-0.17.0-cp34-none-win_amd64.whl).

Крок 2: Перейдіть до каталогу, де є файл завантаження, з командного рядка (ім'я папки CD).

Крок 3: Запустіть цю команду:

pip install scipy-0.17.0-cp27-none-win_amd64.whl

3
тільки ця опція допомагає мені в Windows
починається

3
Ця опція не працювала для мене на Windows7 Cygwin 64bit: scipy-0.17.1-cp27-cp27m-win_amd64.whl не підтримується колесо на цій платформі.
niken

@Nik Я отримав те саме повідомлення. Я думаю, це тому, що ваш екземпляр Python є 32-розрядним. Завантаження і встановлення "scipy-0.18.1-cp27-cp27m-win32.whl" працювало для мене.
Робін Крамер

це працювало для мене в Windows, мені потрібно було перевстановити numpy, використовуючи пакет із цього сайту, і все працювало чудово
josehzz

20

Я спробував усе вищесказане, і мені нічого не вийшло. Це вирішило всі мої проблеми:

pip install -U numpy

pip install -U scipy

Зауважте, що -Uопція pip installвимагає оновлення пакета . Без цього, якщо пакет уже встановлений pip, повідомить вам про це та вийде, нічого не роблячи.


13

Якщо я вперше встановлю BLAS, LAPACK та GCC Fortran як системні пакети (я використовую Arch Linux ), я можу встановити SciPy за допомогою:

pip install scipy

1
Як встановити благи? "pip install blas" і "apt-get install blas" не вдалося мені.
еран

@Eran blas - це архівний пакет. тож ви можете встановити через Pacman -S blas.
chao787

13

У Fedora це працює:

sudo yum install -y python-pip
sudo yum install -y lapack lapack-devel blas blas-devel 
sudo yum install -y blas-static lapack-static
sudo pip install numpy
sudo pip install scipy

Якщо public keyпід час завантаження виникають помилки, додайте їх --nogpgcheckяк параметрyum , наприклад: yum --nogpgcheck install blas-devel

У Fedora 23 далі використовуйте dnfзамість yum.


У своєму віртуальному середовищі я змінив останні два рядки запропонованого рішення на наступні рядки: sudo pip install - оновлення pip sudo pip install -U numpy sudo pip install -U scipy
лютого

7

Для користувачів Arch Linux:

pip install --user scipy необхідні умови встановлення наступних пакетів Arch:

  • gcc-fortran
  • blas
  • lapack

1
Добре знати, але це було б краще як редагування чи коментар до відповіді @ user437730.
Ryne Everett

Як встановити ці пакети? тобто gcc-fortran, blas, lapack
user3731622

3

Аддон для Ubuntu (Ubuntu 10.04 LTS (Lucid Lynx)):

Сховище перемістилося, але a

pip install -e git+http://github.com/scipy/scipy/#egg=scipy

не вдалося мені виконати наступні кроки, нарешті, це вийшло (як root у віртуальному середовищі, де python3є посилання на Python 3.2.2): встановити залежності Ubuntu (див. elaichi), клонувати NumPy та SciPy:

git clone git://github.com/scipy/scipy.git scipy

git clone git://github.com/numpy/numpy.git numpy

Збірка NumPy (всередині numpyпапки):

python3 setup.py build --fcompiler=gnu95

Встановіть SciPy (всередині scipyпапки):

python3 setup.py install

3

У моєму випадку це не працювало, поки я також не встановив наступний пакет: libatlas-base-dev, gfortran

 sudo apt-get install libatlas-base-dev gfortran

Потім запустіть pip install scipy


3
  1. встановити python-3.4.4
  2. scipy-0,15,1-win32-superpack-python3.4
  3. застосувати наступну похвалу док
py -m pip install --upgrade pip
py -m pip install numpy
py -m pip install matplotlib
py -m pip install scipy
py -m pip install scikit-learn

2

Відповідь - так, є.

По-перше, ви можете легко встановити нумерові команди використання:

pip install numpy

Тоді слід встановити mkl, який вимагає Scipy, і ви можете завантажити його тут

Після завантаження file_name.whl ви встановите його

C:\Users\****\Desktop\a> pip install mkl_service-1.1.2-cp35-cp35m-win32.whl
Processing c:\users\****\desktop\a\mkl_service-1.1.2-cp35-cp35m-win32.whl 
Installing collected packages: mkl-service    
Successfully installed mkl-service-1.1.2

Потім на цьому ж веб-сайті можна завантажити scipy-0.18.1-cp35-cp35m-win32.whl

Примітка. Ви повинні завантажити файл file_name.whl відповідно до вашої версії python, якщо версія python має 32-бітний python3.5, ви повинні завантажити цю, і "win32" стосується вашої версії python, а не версії вашої операційної системи.

Потім встановіть file_name.whl так:

C:\Users\****\Desktop\a>pip install scipy-0.18.1-cp35-cp35m-win32.whl
Processing c:\users\****\desktop\a\scipy-0.18.1-cp35-cp35m-win32.whl
Installing collected packages: scipy
Successfully installed scipy-0.18.1

Тоді є ще одне, що потрібно зробити: прокоментувати специфічний рядок, або під час введення команди "імпортувати науку" з'являться повідомлення про помилки.

Тож прокоментуйте цей рядок

from numpy._distributor_init import NUMPY_MKL  # requires numpy+mkl

у цьому файлі: your_own_path \ lib \ site-пакети \ scipy__init __. py

Тоді ви можете використовувати SciPy :)

Ось розповімо більше про останній крок.

Ось аналогічна відповідь на подібне питання.


@Tonechas Як щодо цього?
Стейтем

1

Окрім усіх цих відповідей, якщо ви встановите 32-бітовий пітон на 64-бітну машину, вам доведеться завантажити 32-бітову науку незалежно від вашої машини. http://www.lfd.uci.edu/~gohlke/pythonlibs/ У наведеній вище URL-адресі ви можете завантажити пакунки та команда: pip install



Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.