Nie można zainstalować Scipy przez pip


119

Podczas instalowania scipy przez pip za pomocą:

pip install scipy

Pip nie może zbudować Scipy i zgłasza następujący błąd:

Cleaning up...
Command /Users/administrator/dev/KaggleAux/env/bin/python2.7 -c "import setuptools, tokenize;__file__='/Users/administrator/dev/KaggleAux/env/build/scipy/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/zl/7698ng4d4nxd49q1845jd9340000gn/T/pip-eO8gua-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/administrator/dev/KaggleAux/env/bin/../include/site/python2.7 failed with error code 1 in /Users/administrator/dev/KaggleAux/env/build/scipy
Storing debug log for failure in /Users/administrator/.pip/pip.log

Jak mogę pomyślnie zbudować Scipy? Może to być nowy problem z OSX Yosemite, ponieważ właśnie zaktualizowałem i nie miałem wcześniej problemów z instalacją scipy.


Dziennik debugowania:

Cleaning up...
  Removing temporary dir /Users/administrator/dev/KaggleAux/env/build...
Command /Users/administrator/dev/KaggleAux/env/bin/python2.7 -c "import setuptools, tokenize;__file__='/Users/administrator/dev/KaggleAux/env/build/scipy/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/zl/7698ng4d4nxd49q1845jd9340000gn/T/pip-eO8gua-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/administrator/dev/KaggleAux/env/bin/../include/site/python2.7 failed with error code 1 in /Users/administrator/dev/KaggleAux/env/build/scipy
Exception information:
Traceback (most recent call last):
  File "/Users/administrator/dev/KaggleAux/env/lib/python2.7/site-packages/pip/basecommand.py", line 122, in main
    status = self.run(options, args)
  File "/Users/administrator/dev/KaggleAux/env/lib/python2.7/site-packages/pip/commands/install.py", line 283, in run
    requirement_set.install(install_options, global_options, root=options.root_path)
  File "/Users/administrator/dev/KaggleAux/env/lib/python2.7/site-packages/pip/req.py", line 1435, in install
    requirement.install(install_options, global_options, *args, **kwargs)
  File "/Users/administrator/dev/KaggleAux/env/lib/python2.7/site-packages/pip/req.py", line 706, in install
    cwd=self.source_dir, filter_stdout=self._filter_install, show_stdout=False)
  File "/Users/administrator/dev/KaggleAux/env/lib/python2.7/site-packages/pip/util.py", line 697, in call_subprocess
    % (command_desc, proc.returncode, cwd))
InstallationError: Command /Users/administrator/dev/KaggleAux/env/bin/python2.7 -c "import setuptools, tokenize;__file__='/Users/administrator/dev/KaggleAux/env/build/scipy/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /var/folders/zl/7698ng4d4nxd49q1845jd9340000gn/T/pip-eO8gua-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/administrator/dev/KaggleAux/env/bin/../include/site/python2.7 failed with error code 1 in /Users/administrator/dev/KaggleAux/env/build/scipy

Spróbuj użyć 'sudo pip install scipy'
Piotr Dabkowski

@PiotrDabkowski Zainstalowałem Pythona przez homebrew, więc nie powinienem potrzebować sudo. Poza tym, dlaczego sudo miałoby pomagać na etapie budowania? Widzę, jak go używam, jeśli odmówiono pozwolenia lub coś takiego.
agconti

Czy na pewno błąd nie jest spowodowany jakimś problemem z uprawnieniami?
Piotr Dabkowski

Użytkownicy systemu Windows mogą zobaczyć moją odpowiedź tutaj
Statham

Dla Centosu upewnić się u mają LAPACK-devel jeśli nie yum install LAPACK-devel
Divyank shukla

Odpowiedzi:


106

Po otwarciu problemu z zespołem SciPy stwierdziliśmy, że musisz zaktualizować pip za pomocą:

pip install --upgrade pip

A w Python 3tym działa:

python3 -m pip install --upgrade pip

aby SciPy został poprawnie zainstalowany. Czemu? Ponieważ:

Starsze wersje pip muszą używać kół, IIRC z --use-wheel. Lub możesz ulepszyć sam pip, wtedy powinien podnieść koła.

Aktualizacja pip rozwiązuje problem, ale możesz również użyć --use-wheelflagi.


11
To zadziałało dla mnie - ale musiałem także zainstalować sugerowane pakiety Luke'asudo apt-get install libatlas-base-dev gfortran
BenB

Musiałem usunąć starą wersję pip przed aktualizacją. Wtedy działało idealnie.
Autonomiczny

1
Ponadto, na mojej idealnie świeżej instalacji 14.04, również musiałemsudo apt-get install python-dev
BenB

90

Użytkownicy systemu Microsoft Windows korzystający z 64-bitowych instalacji Pythona będą musieli pobrać stąd 64-bitową .whlwersję Scipy , a następnie po prostu do folderu, w którym pobrałeś plik i uruchomić:cd.whl

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

28
scipy-0.16.1-cp27-none-win_amd64.whl is not a supported wheel on this platform.
Watchmaker

15
@gugol Być może już tego próbowałeś, ale musisz się upewnić, że liczby po cp pasują do twojej wersji Pythona (np. cp34 = 3.4), a amd64 / win32 jest poprawne.
fdsa

4
D:\TEMP>pip install "scipy-0.19.1-cp35-cp35m-win_amd64.whl" Requirement 'scipy\u20110.19.1\u2011cp35\u2011cp35m\u2011win_amd64.whl' looks li ke a filename, but the file does not exist scipy\u20110.19.1\u2011cp35\u2011cp35m\u2011win_amd64.whl is not a valid wheel f ilename. D:\TEMP>pip install "test.whl" test.whl is not a valid wheel filename. D:\TEMP>pip install test.whl test.whl is not a valid wheel filename.Idę cd do katalogu, próbuję go uruchomić, a następnie pojawia się błąd. Następnie zmieniam nazwę pliku, próbuję go uruchomić, pojawia się kolejny błąd. Metoda nie działa ...
user32882

Widzę ten sam problem co @ user32882. Co takiego robimy źle?
gen.

@gugol Miałem ten sam problem, pomogła mi notatka z @ Cyclotron3x3; -cp27w nazwie pliku odnosi się do wersji Pythona, musiałem znaleźć plik ze -cp36w nazwie pliku do meczu z mojej wersji Pythona 3.6.
Benson

59

Napotykam ten sam problem podczas instalacji Scipy pod Ubuntu.
Musiałem użyć polecenia:

$ sudo apt-get install libatlas-base-dev gfortran
$ sudo pip3 install scipy

Więcej szczegółów można znaleźć tutaj Instalowanie SciPy za pomocą pip
Niestety nie wiem, jak to zrobić w systemie OS X Yosemite.


To rozwiązało problem, który miałem podczas korzystania z „Bash na Ubuntu na Windows 10”.
Coxy

41

W systemie Windows 10 większość opcji nie będzie działać. Wykonaj następujące kroki:

W systemie Windows 10 z CMD, nie można pobrać scipybezpośrednio z większości znanych poleceń podoba wget, cloning scipy github, pip install scipy, etc

Aby zainstalować, przejdź do plików pythonlibs .whl , a jeśli używasz, python 2.7 32 bitpobierz numpy-1.11.2rc1+mkl-cp27-cp27m-win32.whl and scipy-0.18.1-cp27-cp27m-win32.whllub jeśli python 2.7 62 bitto pobierznumpy-1.11.2rc1+mkl-cp27-cp27m-win_amd64.whl and scipy-0.18.1-cp27-cp27m-win_amd64.whl

Po pobraniu zapisz pliki pod swoim python directory, w moim przypadku tak byłoc:\>python27

Następnie uruchomić:

pip install C:\Python27\numpy-1.11.2rc1+mkl-cp27-cp27m-win32.whl 
pip install C:\Python27\scipy-0.18.1-cp27-cp27m-win32.whl

Uwaga:

  1. scipyPotrzeby numpyjak uzależnienia, więc to dlaczego pobierasz numpyprzed scipy.
  2. cp27w plikach .whl oznacza, że ​​te pliki są przeznaczone python 2.7i cp33oznacza python 3.xspecjalnie> = 3.3

To zadziałało jak urok! :) Wypróbowałem wszystkie inne rozwiązania, ale nie powiodło się (Windows 10, Python 2.7 32-bit)
U. Muneeb

To zadziałało dla mnie na win 10 z Python 3.5 i 64b machine pip install numpy-1.13.1 + mkl-cp35-cp35m-win_amd64.whl pip install numpy-1.13.1 + mkl-cp35-cp35m-win_amd64.whl
vlad

Ta odpowiedź rozwiązała problem w moim przypadku (Windows 8.1), ale musiałem również pobrać i zainstalować numpy + mkl wheel. Zrób to, jeśli po wykonaniu tej odpowiedzi pojawi się błąd ImportError „NUMPY_MKL” podczas próby zaimportowania scipy. Kredyty dla @VMAtm .
Renato Byrro

W przypadku Pythona 3.6.2 w systemie Windows 10 użyjscipy-0.19.1-cp36-cp36m-win_amd64.whl
Dmitry

Dzięki !, aby korzystać z imread, musiałem również zainstalować Pillow --pip install Pillow
nieograniczone

13

Po znalezieniu odpowiedzi na kilka wskazówek, udało mi się to działając

brew install gcc 
pip install scipy

(Pierwszy z tych kroków zajął 96 minut na moim Mac Book Air z 2011 roku, więc mam nadzieję, że się nie spieszysz!)


Właściwie nie byłem w stanie brew install gcc. Skończyło się na tym, że wyrzuciło kilka błędów. Ale po pracy z chłopakami ze Scipy; Znalazłem rozwiązanie. Dziękuję za odpowiedź!
agconti

To faktycznie okazało się dla mnie prostym rozwiązaniem. Koniec końców nie buduj i nie instaluj pobranego zestawu scipy. :)
Sean

To zadziałało dla mnie, a pierwszy krok zajął tylko kilka sekund
André Fratelli

9

Jeśli jesteś zupełnie nowy w Pythonie, przeczytaj krok po kroku lub przejdź bezpośrednio do ostatniego kroku. Postępuj zgodnie z poniższą metodą, aby zainstalować scipy 0.18.1 na 64-bitowym systemie Windows, 64-bitowym Pythonie. Jeśli poniższe polecenie nie działa, przejdź dalej

pip install scipy

Uważaj na wersje

  1. Pyton

  2. Windows

  3. .whl wersja plików numpy i scipy

  4. Najpierw zainstaluj numpy i scipy.

    pip install FileName.whl
  5. Dla Numpy: http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy Dla Scipy: http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy

Zwróć uwagę na nazwę pliku (sprawdź numer wersji).

Np .: scipy-0.18.1-cp35-cp35m-win_amd64.whl

Aby sprawdzić, która wersja jest obsługiwana przez Twój pip, przejdź do punktu nr 2 poniżej.

Jeśli używasz pliku .whl. Prawdopodobnie wystąpią następujące błędy.

  1. Używasz pip w wersji 7.1.0, jednak dostępna jest wersja 8.1.2.

Powinieneś rozważyć aktualizację za pomocą polecenia „python -m pip install --upgrade pip”

  1. scipy-0.15.1-cp33-none-win_amd64.whl.whl nie jest obsługiwane koło na tej platformie

W przypadku powyższego błędu: uruchom Pythona i wpisz:

import pip
print(pip.pep425tags.get_supported())

Wynik:

[('cp35', 'cp35m', 'win_amd64'), ('cp35', 'none', 'win_amd64'), ('py3', 'none', 'win_amd64'), ('cp35', 'none ',' any '), (' cp3 ',' none ',' any '), (' py35 ',' none ',' any '), (' py3 ',' none ',' any '), ( 'py34', 'none', 'any'), ('py33', 'none', 'any'), ('py32', 'none', 'any'), ('py31', 'none', „dowolny”), („py30”, „brak”, „dowolny”)]

Na wyjściu zauważysz, że jest tam cp35, więc pobierz cp35 zarówno dla numpy, jak i scipy. Dalsze edycje są mile widziane.



6

Zamiast iść trudniejszą drogą pobierania określonych pakietów. Wolę wybrać szybszą drogę korzystania z Conda. pip ma swoje problemy.

  • Python -v (3.6.0)
  • Windows 10 (64-bitowy)

Conda, zainstaluj condę z: https://conda.io/docs/install/quick.html#windows-miniconda-install

wiersz polecenia

C:\Users\xyz>conda install -c anaconda scipy=0.18.1
Fetching package metadata .............
Solving package specifications:

Plan pakietu do instalacji w środowisku C: \ Users \ xyz \ Miniconda3:

Zainstalowane zostaną następujące NOWE pakiety:

mkl:       2017.0.1-0         anaconda
numpy:     1.12.0-py36_0      anaconda
scipy:     0.18.1-np112py36_1 anaconda

Następujące pakiety zostaną WŁĄCZONE przez kanał o wyższym priorytecie:

conda:     4.3.11-py36_0               --> 4.3.11-py36_0 anaconda
conda-env: 2.6.0-0                     --> 2.6.0-0       anaconda

Kontynuować ([t] / n)? y

conda-env-2.6. 100% |###############################| Time: 0:00:00  32.92 kB/s
mkl-2017.0.1-0 100% |###############################| Time: 0:00:24   5.45 MB/s
numpy-1.12.0-p 100% |###############################| Time: 0:00:00   5.09 MB/s
scipy-0.18.1-n 100% |###############################| Time: 0:00:02   5.59 MB/s
conda-4.3.11-p 100% |###############################| Time: 0:00:00   4.70 MB/s


4

To jest alternatywa dla pip . Miałem też ten sam błąd podczas instalacji scipy z pip.

Następnie pobrałem i zainstalowałem MiniConda . A potem użyłem poniższego polecenia, aby zainstalować pytables.

conda install -c conda-forge scipy

Proszę zapoznać się z poniższym zrzutem ekranu.

wprowadź opis obrazu tutaj


3

najlepszą metodą, jaką mogę zasugerować, jest to

  1. Pobierz plik koła z tej lokalizacji dla swojej wersji Pythona

  2. Przenieś plik na dysk główny, np. C:>

  3. Uruchom Cmd i wprowadź następujące dane

    • pip zainstaluj scipy-1.0.0rc1-cp36-none-win_amd64.whl

Proszę zauważyć, że jest to wersja, której używam dla mojego Pyhton 3.6.2, powinna zainstalować się dobrze

możesz chcieć uruchomić to polecenie później, aby upewnić się, że wszystkie dodatki Pythona są aktualne

pip list --outdated

1

Możesz też ręcznie pobrać i uruchomić http://www.lfd.uci.edu/~gohlke/pythonlibs wersję Scipy odpowiednią dla Ciebie. Weź pod uwagę swoją wersję Pythona (python --version) i architekturę systemu (32/64 bit) . Wybierz odpowiednio wersję Scipy. scipy-0.18.1- cp27 -cp27m- win32 - dla Pythona 2.7 32-bitowego scipy-0.18.1- cp27 -cp27m- win_amd64 - dla Pythona 2.7 64 bit W przeciwnym razie błąd scipy-0.15.1-cp33-none-win_amd64.whl .whl nie jest obsługiwany na tej platformie pojawi się podczas instalacji.

Teraz zmień katalog na pobrany plik i wykonaj polecenie pip install scipy-0.15.1-cp33-none-win_amd64.whl.whl(odpowiednio zmień nazwę pliku)

Dodałem tę odpowiedź tylko dlatego, że odpowiedź Aruna (która okazała się przydatna przeze mnie) nie wspomina nic o dopasowywaniu 32/64 bitów, z którymi się spotkałem.


0

Jeśli używasz CentOS, musisz zainstalować lapack-devel w następujący sposób:

 $ yum install lapack-devel



0

Miałem ten sam problem i udało mi się użyć sudo.

$ sudo pip install scipy

0

Najłatwiej jest w następujących krokach: Naprawianie scipy dla Pythona [2.n <python <3.n]

Pobierz niezbędne pliki z: http://www.lfd.uci.edu/~gohlke/pythonlibs/

Pobierz wersję numpy + mkl (potrzebną do uruchomienia scipy), a następnie pobierz scipy dla swojego typu Pythona (2.n python zapisane jako 2n) lub (3.n python zapisane jako 3n), n jest zmienną. Pamiętaj, że musisz wiedzieć, czy masz procesor 32-bitowy czy 64-bitowy.

Utwórz katalog gdzieś na swoim komputerze, na przykład [C: \ DIRECTORY], aby zainstalować pliki numpy + mkd.whl i scipy.whl

Po pobraniu obu plików znajdź lokalizację pliku na komputerze i przenieś go do utworzonego katalogu.

Przykład: potrzebna jest pierwsza instalacja pliku, ponieważ scipy jest w

C: \ KATALOG \ numpy \ numpy-0.0.0 + mkl-cp2n-cp2nm-win_amd32.whl

Przykład: trwa instalacja drugiego pliku

C: \ KATALOG \ scipy \ scipy-0.0.0-cp2n-cp2nm-win_amd32.whl

Przejdź do wiersza poleceń i postępuj zgodnie z następującym przykładem dla języka Python w wersji 2.n:

py -2.n -m pip install C:\DIRECTORY\numpy\numpy-0.0.0+mkl-cp2n-cp2nm-win_amd32.whl

powinien zainstalować

py -2.n -m pip install C:\DIRECTORY\scipy\scipy-0.0.0-cp2n-cp2nm-win_amd32.whl

powinien zainstalować

Przetestuj oba moduły na swoim Pythonie IDLE w następujący sposób:

import numpy

import scipy

moduły działają, jeśli nie są zwracane żadne błędy.

IFDAAS


Czy ta odpowiedź jest specyficzna dla systemu Windows, ponieważ pytający jest w systemie OS X Yosemite?
Ari Cooper-Davis

0

W przypadku systemu Windows (w moim przypadku 7):

  1. pobierz scipy-0.19.1-cp36-cp36m-win32.whl z http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy
  2. utwórz jeden plik some.bat z zawartością

    @echo off C:\Python36\python.exe -m pip -V C:\Python36\python.exe -m pip install scipy-0.19.1-cp36-cp36m-win32.whl C:\Python36\python.exe -m pip list pause

  3. następnie uruchom ten plik wsadowy some.bat

  4. wywołaj powłokę Pythona „C: \ Python36 \ pythonw.exe” C: \ Python36 \ Lib \ idlelib \ idle.pyw ”i sprawdź, czy scipy został zainstalowany z

import scipy


PS: Mam kilka wersji Phytona (2.7,3.5 i 3.6) zainstalowanych na tym samym komputerze pod Windows 7
Ion Stefanache

0

Prosty sposób na zainstalowanie Scipy w systemie Windows 10 w 100% jest następujący: po prostu pip this ====> pip install scipy==1.0.0rc2

Podziękujesz mi później :)


Składnia jest nieprawidłowa
user2063329

user2063329 Wypróbuj pip3
George C.


0

Możesz przetestować tę odpowiedź:

python -m pip install --user numpy scipy matplotlib ipython jupyter pandas sympy nose
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.