Instalar SciPy con pip

207

Es posible instalar NumPy con pip usando pip install numpy.

¿Existe una posibilidad similar con SciPy ? (Hacer pip install scipyno funciona)


Actualizar

¡El paquete SciPy ya está disponible para ser instalado pip!

Olivier Verdier
fuente
3
Es posible que desee reconsiderar la respuesta aceptada (¿tal vez para knoxxs?). ¡No creo que la instalación a través de git sea el método preferido! :)
Andy Hayden
10
Es relevante nuevamente, porque las últimas versiones no pueden simplementepip install
erikbwork

Respuestas:

106

Un intento de easy_installindicar un problema con su listado en el índice del paquete Python , que busca pip.

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

No todo está perdido, sin embargo; pipse puede instalar desde los repositorios de Subversion (SVN), Git , Mercurial y Bazaar . SciPy usa SVN:

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

Actualización (12-2012):

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

Como NumPy es una dependencia, también debe instalarse.

jak119
fuente
1
¡Brillante! Lo que lo hizo por mí fue: tenga en pip install svn+http://svn.scipy.org/svn/scipy/trunk cuenta que, siguiendo stackoverflow.com/questions/651305 , también puede elegir una revisión dada (digamos 5839, que creo que es la última versión estable, 0.7.1) usando: pip install http://svn.scipy.org/svn/scipy/!svn/bc/5839/trunk/ aunque no he probado que ...
Olivier Verdier
+1 para longevidad y robustez. Esto todavía funciona para mí 2 años después en OSX 10.8.2 y python 2.7. El estándar pip install scipyfalla durante la compilación de fortan (incluso después de tener éxito brew install gfortrany pip install numpy). La instalación de svn evita la instalación de repositorio github de @lokalhort con python3 o la dependencia de @ elaichi apt-getpara ubuntu.
placas el
2
Presumiblemente, esto significa que obtienes un borde desgarrador en lugar de la última versión estable.
Andy Hayden
No funciono para mi. Pero esto parece ser una buena solución. Supongo que tengo otros problemas y es por eso que esta solución no funciona.
Amir Md Amiruzzaman
214

Requisito previo:

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

Paquetes reales:

sudo pip install numpy
sudo pip install scipy

Paquetes opcionales:

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

src

Abhishek Gupta
fuente
2
Nota: es esencial para construir :)
Andy Hayden
30
sudo pip installno es un patrón que deba incluir una respuesta de propósito general. Por lo general, quieres pip installentrar en tu virtualenv.
erikbwork
1
Esto resolvió mi problema, ¡gracias! Para usuarios de Mac, libatlas-base-devviene con el sistema operativo y gfortranse puede instalar usando un paquete ( https://gcc.gnu.org/wiki/GFortranBinariesMacOS )
robodasha
Haciéndose eco de erikb85, uno no debería tener la costumbre de usar sudo pip installlibs python. Utilice virtualenv y virtualenvwrapper . Mi patrón habitual es sudo apt-get install python-pipseguido por sudo pip install virtualenvwrapper. Después de eso todo entra en un virtualenv.
DanielSank
También asegúrese de tener suficiente memoria (es decir, está ejecutando la instalación en algunos VPS) y cree un archivo de intercambio si es necesario El mensaje de error en ese caso es algo como esto: 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
Tomislav Muic
33

En Ubuntu 10.04 (Lucid), pude exitosamente pip install scipy(dentro de un virtualenv) después de instalar algunas de sus dependencias, en particular:

$ 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
elaichi
fuente
55
ahora es 'libatlas-base-dev', en lugar de 'libatlas-sse2-dev'
madCode
1
$ sudo apt-get install libamd2.2.0 libblas3gf libc6 libgcc1 libgfortran3 liblapack3gf libumfpack5.4.0 libstdc ++ 6 build-essential gfortran libatlas-dev libatlas3-base python python-all-dev gcc g ++ libblas-dev liblapack-dev
elimisteve
en ubuntu 12.04:sudo aptitude install python-scipy
Ciro Santilli 郝海东 冠状 病 六四 事件 法轮功
14
Es mejor si quieres usar la última versión de scipy sudo apt-get build-dep python-scipyy luego instalar scipy desde pip.
Ibrahim
22

Para instalar scipy en Windows, siga estas instrucciones: -

Paso 1: Presione este enlace http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy para descargar un archivo scipy .whl (por ejemplo, scipy-0.17.0-cp34-none-win_amd64.whl).

Paso 2: vaya al directorio donde está ese archivo de descarga desde el símbolo del sistema (nombre de la carpeta del CD).

Paso 3: Ejecute este comando:

pip install scipy-0.17.0-cp27-none-win_amd64.whl
bharat pk
fuente
3
solo esta opción me ayuda en Windows
com
3
Esta opción no me funcionó en Windows7 Cygwin 64bit: scipy-0.17.1-cp27-cp27m-win_amd64.whl no es una rueda compatible en esta plataforma.
niken
@ Nik, recibí el mismo mensaje. Creo que es porque su instancia de Python es de 32 bits. Descargar e instalar "scipy-0.18.1-cp27-cp27m-win32.whl" funcionó para mí.
Robin Kramer
esto funcionó para mí en Windows, necesitaba reinstalar numpyusando el paquete de ese sitio y todo funcionó bien
josehzz
20

Intenté todo lo anterior y nada funcionó para mí. Esto resolvió todos mis problemas:

pip install -U numpy

pip install -U scipy

Tenga en cuenta que la -Uopción de pip installsolicitar que se actualice el paquete . Sin él, si el paquete ya está instalado, piple informará de esto y saldrá sin hacer nada.

Michael Gogel
fuente
13

Si primero instalo BLAS, LAPACK y GCC Fortran como paquetes del sistema (estoy usando Arch Linux ), puedo instalar SciPy con:

pip install scipy
usuario437730
fuente
1
¿Cómo instalas blas? "pip install blas" y "apt-get install blas" fallaron para mí.
Eran
@Eran blas es un paquete archlinux. entonces puede instalar a través de pacman -S blas.
chao787
13

En Fedora, esto funciona:

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

Si obtiene algún public keyerror durante la descarga, agregue --nogpgcheckcomo parámetro ayum , por ejemplo: yum --nogpgcheck install blas-devel

En Fedora 23 en adelante, use en dnflugar de yum.

Shailen
fuente
En mi entorno virtual, cambié las últimas 2 líneas de la solución propuesta en las siguientes líneas: sudo pip install --upgrade pip sudo pip install -U numpy sudo pip install -U scipy
1man
7

Para los usuarios de Arch Linux:

pip install --user scipy requisitos previos para instalar los siguientes paquetes Arch:

  • gcc-fortran
  • blas
  • lapack
klingt.net
fuente
1
Es bueno saberlo, pero esto sería mejor como una edición o comentario sobre la respuesta de @ user437730.
Ryne Everett
¿Cómo instalo esos paquetes? es decir, gcc-fortran, blas, lapack
user3731622
3

Complemento para Ubuntu (Ubuntu 10.04 LTS (Lucid Lynx)):

El repositorio se movió, pero un

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

falló para mí ... Con los siguientes pasos, finalmente funcionó (como root en un entorno virtual, donde python3hay un enlace a Python 3.2.2): instale las dependencias de Ubuntu (vea elaichi), clone NumPy y SciPy:

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

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

Build NumPy (dentro de la numpycarpeta):

python3 setup.py build --fcompiler=gnu95

Instale SciPy (dentro de la scipycarpeta):

python3 setup.py install
lokalhorst
fuente
3

En mi caso, no funcionaba hasta que también instalé el siguiente paquete: libatlas-base-dev, gfortran

 sudo apt-get install libatlas-base-dev gfortran

Luego ejecute pip install scipy

Pulkit Pahwa
fuente
3
  1. instalar python-3.4.4
  2. scipy-0.15.1-win32-superpack-python3.4
  3. aplicar el siguiente documento de recomendación
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
Mushtaq Hussain
fuente
2

La respuesta es sí, la hay.

Primero, puede instalar fácilmente comandos de uso numpy:

pip install numpy

Luego debe instalar mkl, que es requerido por Scipy, y puede descargarlo aquí

Después de descargar el file_name.whl lo instala

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

Luego, en el mismo sitio web, puede descargar scipy-0.18.1-cp35-cp35m-win32.whl

Nota: debe descargar file_name.whl de acuerdo con su versión de Python, si su versión de Python es 32bit python3.5, debe descargar esta, y el "win32" se refiere a su versión de Python, no a la versión de su sistema operativo.

Luego instale file_name.whl así:

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

Entonces solo hay una cosa más que hacer: comentar una línea específica o habrá mensajes de error cuando introduzcas el comando "import scipy".

Así que comenta esta línea

from numpy._distributor_init import NUMPY_MKL  # requires numpy+mkl

en este archivo: your_own_path \ lib \ site-packages \ scipy__init __. py

Entonces puedes usar SciPy :)

aquí te contamos más sobre el último paso.

Aquí hay una respuesta similar a una pregunta similar.

Statham
fuente
@Tonechas ¿Qué tal esto?
Statham
1

Además de todas estas respuestas, si instala Python de 32 bits en su máquina de 64 bits, debe descargar scipy de 32 bits independientemente de su máquina. http://www.lfd.uci.edu/~gohlke/pythonlibs/ En la URL anterior puede descargar los paquetes y el comando es: pip install

Anuroop Pendela
fuente
0

Para gentoo, está en el repositorio principal: emerge --ask scipy

autómata
fuente
0

También puede usar esto en Windows con Python 3.6 python -m pip install scipy

Ibrahim Isa
fuente