Scipy kann nicht über Pip installiert werden


119

Bei der Installation von scipy through pip mit:

pip install scipy

Pip kann scipy nicht erstellen und gibt den folgenden Fehler aus:

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

Wie kann ich scipy dazu bringen, erfolgreich zu bauen? Dies ist möglicherweise ein neues Problem mit OSX Yosemite, da ich gerade ein Upgrade durchgeführt habe und noch keine Probleme bei der Installation von scipy hatte.


Austestungsprotokoll:

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

Versuchen Sie es mit 'sudo pip install scipy'
Piotr Dabkowski

@PiotrDabkowski Ich habe Python über Homebrew installiert, damit ich kein Sudo verwenden muss. Warum sollte sudo auch beim Build-Schritt helfen? Ich kann sehen, ob es die Erlaubnis verweigert oder so.
Agconti

Sind Sie sicher, dass der Fehler nicht durch ein Berechtigungsproblem verursacht wurde?
Piotr Dabkowski

Windows-Benutzer können meine Antwort hier sehen
Statham

Für Centos stellen Sie sicher, dass Sie Lapack-Entwicklung haben, wenn nicht, installieren Sie Lapack-Entwicklung
Divyank Shukla

Antworten:


106

Nachdem wir ein Problem mit dem SciPy-Team gemeldet hatten, stellten wir fest, dass Sie pip aktualisieren müssen mit:

pip install --upgrade pip

Und in Python 3dieser Arbeit:

python3 -m pip install --upgrade pip

damit SciPy richtig installiert wird. Warum? Weil:

Ältere Versionen von Pip müssen angewiesen werden, Räder zu verwenden, IIRC mit --use-Rad. Oder Sie können Pip selbst aufrüsten, dann sollte es die Räder aufnehmen.

Ein Upgrade von pip löst das Problem, aber Sie können möglicherweise auch nur das --use-wheelFlag verwenden.


11
Dies funktionierte für mich - aber ich musste auch Lukes vorgeschlagene Pakete installierensudo apt-get install libatlas-base-dev gfortran
BenB

Ich musste die alte Version von pip vor dem Upgrade entfernen. Dann hat es perfekt funktioniert.
Autonome

1
Außerdem musste ich bei meiner perfekt frischen 14.04-Installationsudo apt-get install python-dev
BenB

90

Microsoft Windows-Benutzer von 64-Bit-Python-Installationen müssen das 64-Bit- .whlScipy von hiercd herunterladen .whlund dann einfach in den Ordner , in den Sie die Datei heruntergeladen haben, ausführen und Folgendes ausführen:

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.
Uhrmacher

15
@gugol Vielleicht haben Sie dies bereits versucht, aber Sie müssen sicherstellen, dass die Zahlen nach cp mit Ihrer Python-Version übereinstimmen (z. B. cp34 = 3.4) und dass amd64 / win32 korrekt ist.
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.Ich CD in das Verzeichnis versuchen, es auszuführen, dann bekomme ich eine Fehlermeldung. Dann ändere ich den Dateinamen und versuche ihn auszuführen, bekomme einen weiteren Fehler. Methode funktioniert nicht ...
user32882

Ich sehe das gleiche Problem wie @ user32882. Was machen wir falsch?
Gen

@gugol Ich hatte das gleiche Problem, die Notiz von @ Cyclotron3x3 hat mir geholfen; Der -cp27Dateiname bezieht sich auf die Version von Python. Ich musste die Datei mit -cp36dem Dateinamen finden, der mit meiner Version von Python übereinstimmt: 3.6.
Benson

59

Ich habe das gleiche Problem, wenn ich Scipy unter Ubuntu installiere.
Ich musste den Befehl verwenden:

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

Weitere Informationen finden Sie hier. Installieren von SciPy mit pip
Leider wissen Sie nicht, wie es unter OS X Yosemite geht.


Dies löste das Problem, das ich mit "Bash unter Ubuntu unter Windows 10" hatte.
Coxy

41

In Windows 10 funktionieren die meisten Optionen nicht. Folge diesen Schritten:

In Windows 10 mit CMD, können Sie nicht herunterladen scipydirekt die meisten der bekannten Befehle wie wget, cloning scipy github, pip install scipyusw.

Um zu installieren, gehen Sie zu pythonlibs .whl-Dateien , und wenn Sie verwenden, python 2.7 32 bitdann herunterladen numpy-1.11.2rc1+mkl-cp27-cp27m-win32.whl and scipy-0.18.1-cp27-cp27m-win32.whloder wenn python 2.7 62 bitdann herunterladennumpy-1.11.2rc1+mkl-cp27-cp27m-win_amd64.whl and scipy-0.18.1-cp27-cp27m-win_amd64.whl

Speichern Sie nach dem Herunterladen die Dateien unter Ihrem python directory, in meinem Fall war esc:\>python27

Dann renne:

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

Hinweis:

  1. scipyBedürfnisse numpyals Abhängigkeit, deshalb laden wir numpyvorher herunter scipy.
  2. cp27in .whl-Dateien bedeutet, dass diese Dateien für speziell> = 3.3 bestimmt sind python 2.7und cp33für diese stehenpython 3.x

Das hat wie ein Zauber gewirkt! :) Versuchte alle anderen Lösungen, schlug aber fehl (Windows 10, Python 2.7 32-Bit)
U. Muneeb

Dies funktionierte für mich unter Win 10 mit Python 3.5 und 64b. Pip install install numpy-1.13.1 + mkl-cp35-cp35m-win_amd64.whl pip install numpy-1.13.1 + mkl-cp35-cp35m-win_amd64.whl
vlad

Diese Antwort löste das Problem in meinem Fall (Windows 8.1), aber ich musste auch numpy + mkl Wheel herunterladen und installieren . Tun Sie dies, wenn Sie einen ImportError "NUMPY_MKL" erhalten, wenn Sie versuchen, scipy zu importieren, nachdem Sie dieser Antwort gefolgt sind. Credits an @VMAtm .
Renato Byrro

Für Python 3.6.2 unter Windows 10 verwenden Siescipy-0.19.1-cp36-cp36m-win_amd64.whl
Dmitry

Danke!, Um imread zu verwenden, wurde ich benötigt, um Pillow auch zu installieren
unbegrenzt

13

Nachdem ich diese Antwort für einige Hinweise gefunden hatte, funktionierte dies

brew install gcc 
pip install scipy

(Der erste dieser Schritte dauerte auf meinem 2011 Mac Book Air 96 Minuten, also hoffe ich, dass Sie es nicht eilig haben!)


Ich konnte es eigentlich nicht brew install gcc. Es endete mit einer Reihe von Fehlern. Aber nach der Arbeit mit den Scipy-Jungs; Ich habe eine Lösung gefunden. Danke für deine Antwort!
Agconti

Dies stellte sich tatsächlich als die einfache Lösung für mich heraus. Am Ende wird das heruntergeladene Scipy-Kit nicht erstellt und installiert. :)
Sean

Dies funktionierte für mich und es dauerte nur ein paar Sekunden für den ersten Schritt
André Fratelli

9

Wenn Sie Python noch nicht kennen, lesen Sie Schritt für Schritt oder gehen Sie direkt zum letzten Schritt. Befolgen Sie die folgende Methode, um scipy 0.18.1 unter Windows 64-Bit und Python 64-Bit zu installieren. Wenn der folgende Befehl nicht funktioniert, fahren Sie fort

pip install scipy

Seien Sie vorsichtig mit den Versionen von

  1. Python

  2. Windows

  3. .whl-Version von Numpy- und Scipy-Dateien

  4. Installieren Sie zuerst numpy und scipy.

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

Achten Sie auf den Dateinamen (überprüfen Sie die Versionsnummer).

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

Um zu überprüfen, welche Version von Ihrem Pip unterstützt wird, fahren Sie mit Punkt 2 fort.

Wenn Sie eine .whl-Datei verwenden. Folgende Fehler treten wahrscheinlich auf.

  1. Sie verwenden Pip Version 7.1.0, jedoch ist Version 8.1.2 verfügbar.

Sie sollten ein Upgrade über den Befehl 'python -m pip install --upgrade pip' in Betracht ziehen

  1. scipy-0.15.1-cp33-none-win_amd64.whl.whl wird auf dieser Plattform nicht unterstützt

Für den obigen Fehler: Starten Sie Python und geben Sie Folgendes ein:

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

Ausgabe:

[('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', 'any'), ('py30', 'none', 'any')]

In der Ausgabe werden Sie feststellen, dass cp35 vorhanden ist. Laden Sie daher cp35 sowohl für numpy als auch für scipy herunter. Weitere Änderungen sind sehr willkommen.



6

Anstatt den schwierigeren Weg zu gehen, bestimmte Pakete herunterzuladen. Ich bevorzuge den schnelleren Weg mit Conda. pip hat seine Probleme.

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

Conda, installieren Sie conda von: https://conda.io/docs/install/quick.html#windows-miniconda-install

Eingabeaufforderung

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

Paketplan für die Installation in Umgebung C: \ Users \ xyz \ Miniconda3:

Die folgenden NEUEN Pakete werden INSTALLIERT:

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

Die folgenden Pakete werden von einem Kanal mit höherer Priorität ERSETZT:

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

Weiter ([j] / 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

Dies ist eine Alternative zu pip . Ich hatte auch den gleichen Fehler bei der Installation von scipy mit pip.

Dann habe ich MiniConda heruntergeladen und installiert . Und dann habe ich den folgenden Befehl verwendet, um pytables zu installieren.

conda install -c conda-forge scipy

Bitte beachten Sie den folgenden Screenshot.

Geben Sie hier die Bildbeschreibung ein


3

Die beste Methode, die ich vorschlagen könnte, ist diese

  1. Laden Sie die Raddatei von diesem Speicherort für Ihre Python-Version herunter

  2. Verschieben Sie die Datei auf Ihr Hauptlaufwerk, z. B. C:>

  3. Führen Sie Cmd aus und geben Sie Folgendes ein

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

Bitte beachten Sie, dass dies die Version ist, die ich für meinen Pyhton 3.6.2 verwende. Er sollte einwandfrei installiert werden

Möglicherweise möchten Sie diesen Befehl nachher ausführen, um sicherzustellen, dass alle Ihre Python-Add-Ons auf dem neuesten Stand sind

pip list --outdated

1

Alternativ manuell herunterladen und ausführen http://www.lfd.uci.edu/~gohlke/pythonlibs Scipy Version für Sie geeignet. Berücksichtigen Sie Ihre Python-Version (Python-Version) und Ihre Systemarchitektur (32/64 Bit) . Wählen Sie die Scipy-Version entsprechend aus. scipy-0.18.1- cp27 -cp27m- win32 - für Python 2.7 32-Bit scipy-0.18.1- cp27 -cp27m- win_amd64 - für Python 2.7 64-Bit Andernfalls der Fehler scipy-0.15.1-cp33-none-win_amd64.whl .whl wird nicht unterstützt Rad auf dieser Plattform wird bei der Installation angezeigt .

Wechseln Sie nun in das Verzeichnis in die heruntergeladene Datei und führen Sie den Befehl aus pip install scipy-0.15.1-cp33-none-win_amd64.whl.whl(ändern Sie den Dateinamen entsprechend).

Ich habe diese Antwort nur hinzugefügt, weil die Antwort von Arun (die ich selbst als nützlich empfunden habe) nichts über die 32/64-Bit-Übereinstimmung erwähnt hat, mit der ich konfrontiert war.


0

Wenn Sie CentOS verwenden, müssen Sie Lapack-Devel wie folgt installieren:

 $ yum install lapack-devel

0

Versuchen Sie, die Scipy-Datei über den folgenden Link herunterzuladen

https://sourceforge.net/projects/scipy/?source=typ_redirect

Es wird eine EXE-Datei sein und Sie müssen sie nur ausführen. Stellen Sie jedoch sicher, dass Sie die Scipy-Version auswählen, die Ihrer Python-Version entspricht.

Wenn die Datei scipy.exe ausgeführt wird, wird das Python-Verzeichnis gesucht und installiert.



0

Ich hatte das gleiche Problem und es war mir gelungen, es zu verwenden sudo.

$ sudo pip install scipy

0

Der einfachste Weg ist in den folgenden Schritten: Scipy für Python reparieren [2.n <Python <3.n]

Laden Sie die erforderlichen Dateien herunter von: http://www.lfd.uci.edu/~gohlke/pythonlibs/

Laden Sie die Version von numpy + mkl herunter (wird zum Ausführen von scipy benötigt) und laden Sie dann scipy für Ihren Python-Typ (2.n Python als 2n geschrieben) oder (3.n Python als 3n geschrieben) herunter. N ist eine Variable. Beachten Sie, dass Sie wissen müssen, ob Sie einen 32-Bit- oder 64-Bit-Prozessor haben.

Erstellen Sie irgendwo auf Ihrem Computer ein Verzeichnis, z. B. [C: \ DIRECTORY], um die Dateien numpy + mkd.whl und scipy.whl zu installieren

Suchen Sie nach dem Herunterladen beider Dateien den Speicherort der Datei auf Ihrem Computer und verschieben Sie sie in das von Ihnen erstellte Verzeichnis.

Beispiel: Die erste Dateieinstallation ist erforderlich, damit sich scipy in befindet

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

Beispiel: Die zweite Dateieinstallation ist in

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

Gehen Sie zu Ihrer Eingabeaufforderung und fahren Sie mit dem folgenden Beispiel für eine Python-Version 2.n fort:

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

sollte installiert werden

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

sollte installiert werden

Testen Sie beide Module auf Ihrem Python IDLE wie folgt:

import numpy

import scipy

Die Module funktionieren, wenn keine Fehler zurückgegeben werden.

IFDAAS


Ist diese Antwort Windows-spezifisch, da sich der Fragesteller unter OS X Yosemite befindet?
Ari Cooper-Davis

0

Für Windows (7 in meinem Fall):

  1. Laden Sie scipy-0.19.1-cp36-cp36m-win32.whl von http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy herunter
  2. Erstellen Sie eine some.bat-Datei mit Inhalt

    @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. Führen Sie dann diese Batch-Datei some.bat aus

  4. Rufen Sie die Python-Shell "C: \ Python36 \ pythonw.exe" C: \ Python36 \ Lib \ idlelib \ idle.pyw "auf und testen Sie, ob scipy mit installiert wurde

scipy importieren


PS: Ich habe mehrere Versionen von Phyton (2.7.3.5 und 3.6) auf demselben Computer unter Windows 7 installiert
Ion Stefanache

0

Die einfache Möglichkeit, scipy zu 100% unter Windows 10 zu installieren, ist folgende: Pip pip this ====> pip install scipy==1.0.0rc2

Dank mir später :)


Syntax ist ungültig
user2063329

user2063329 Versuchen Sie pip3
George C.

0

Ich hatte ähnliche Probleme mit Python 3.7 (3.7.0b4). Dies war auf einige Änderungen in Bezug auf einige Codierungsannahmen zurückzuführen (Python 3.6 >> Python 3.7).

Infolgedessen sind viele Paketinstallationen (z. B. über Pip) fehlgeschlagen.


0

Sie können diese Antwort testen:

python -m pip install --user numpy scipy matplotlib ipython jupyter pandas sympy nose
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.