Instalando o SciPy com pip

207

É possível instalar o NumPy com pip usando pip install numpy.

Existe uma possibilidade semelhante com o SciPy ? (Fazer pip install scipynão funciona.)


Atualizar

O pacote SciPy está agora disponível para instalação pip!

Olivier Verdier
fonte
3
Você pode reconsiderar a resposta aceita (talvez da knoxxs?). Não acho que a instalação via git seja o método preferido! :)
Andy Hayden
10
É relevante novamente, porque as últimas versões não podem simplesmentepip install
erikbwork

Respostas:

106

Uma tentativa de easy_installindicar um problema com sua listagem no Python Package Index , que o pip pesquisa.

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

Nem tudo está perdido, no entanto; pippode instalar a partir do Subversion (SVN), Git , Mercurial e Bazaar . O SciPy usa SVN:

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

Atualização (12-2012):

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

Como o NumPy é uma dependência, ele também deve ser instalado.

jak119
fonte
1
Brilhante! O que fiz para mim foi: pip install svn+http://svn.scipy.org/svn/scipy/trunk Observe que, seguindo stackoverflow.com/questions/651305 , você também pode escolher uma determinada revisão (por exemplo, 5839, que acredito ser a última versão estável, 0.7.1) usando: pip install http://svn.scipy.org/svn/scipy/!svn/bc/5839/trunk/ embora eu não tenha testado isso ...
Olivier Verdier
+1 para longevidade e robustez. Isso ainda funciona para mim 2 anos depois no OSX 10.8.2 e python 2.7. O padrão pip install scipyfalha durante a compilação do fortan (mesmo após o sucesso brew install gfortrane pip install numpy). A instalação svn evita a instalação do github do @ lokalhort com python3 ou a dependência do @ elaichi apt-getpara o ubuntu.
H2
2
Presumivelmente, isso significa que você fica mais cintilante do que a versão estável mais recente.
Andy Hayden
não funcionou para mim. Mas esta parece ser uma boa solução. Acho que estou tendo outros problemas e é por isso que esta solução não está funcionando.
Amir Md Amiruzzaman
214

Pré-requisito:

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

Pacotes reais:

sudo pip install numpy
sudo pip install scipy

Pacotes opcionais:

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

src

Abhishek Gupta
fonte
2
Nota: É :) build-essential
Andy Hayden
30
sudo pip installnão é um padrão que uma resposta de propósito geral deva incluir. Normalmente você quer pip installentrar no seu virtualenv.
erikbwork
1
Isso resolveu meu problema, obrigado! Para usuários de Mac, libatlas-base-devvem com o sistema operacional e gfortranpode ser instalado usando um pacote ( https://gcc.gnu.org/wiki/GFortranBinariesMacOS )
robodasha
Fazendo eco ao erikb85, não se deve ter o hábito de usar sudo pip installbibliotecas python. Use virtualenv e virtualenvwrapper . Meu padrão usual é sudo apt-get install python-pipseguido por sudo pip install virtualenvwrapper. Depois disso, tudo entra em um virtualenv.
DanielSank
Além disso, verifique se você possui memória suficiente (por exemplo, você está executando a instalação em algum VPS) e crie um arquivo de permuta, se necessário. A mensagem de erro nesse caso é algo como isto: 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

No Ubuntu 10.04 (Lucid), eu conseguia pip install scipy(dentro de um virtualenv) com êxito depois de instalar algumas de suas dependências, em 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
fonte
5
é 'libatlas-base-dev' agora, em vez de 'libatlas-sse2-dev'
madCode
1
$ sudo apt-get install libamd2.2.0 libblas3gf libc6 libgcc1 libgfortran3 liblapack3gf libumfpack5.4.0 libstdc ++ 6 essencial para compilação gfortran libatlas-dev libatlas3-base python python-tudo-dev gcc g ++ libblas-dev liblapack-dev
elimist
no ubuntu 12.04:sudo aptitude install python-scipy
Ciro Santilli escreveu:
14
Melhor se você quiser usar a versão mais recente do scipy é fazer sudo apt-get build-dep python-scipye instalar o scipy a partir do pip.
Ibrahim
22

Para instalar o scipy no Windows, siga estas instruções: -

Etapa 1: pressione este link http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy para baixar um arquivo .whl scipy (por exemplo, scipy-0.17.0-cp34-none-win_amd64.whl).

Etapa 2: Vá para o diretório em que o arquivo de download está lá no prompt de comando (cd folder-name).

Etapa 3: Execute este comando:

pip install scipy-0.17.0-cp27-none-win_amd64.whl
bharat pk
fonte
3
somente esta opção me ajuda no Windows #
06616
3
Esta opção não funcionou para mim no Windows7 Cygwin de 64 bits: scipy-0.17.1-cp27-cp27m-win_amd64.whl não é uma roda suportada nesta plataforma.
Niken 25/05
@ Nik, recebi a mesma mensagem. Eu acho que é porque sua instância do Python é de 32 bits. Fazer o download e instalar "scipy-0.18.1-cp27-cp27m-win32.whl" funcionou para mim.
Robin Kramer
Isso funcionou para mim no Windows, eu precisava reinstalar numpyusando o pacote a partir desse site e tudo funcionou muito bem
josehzz
20

Eu tentei todas as opções acima e nada funcionou para mim. Isso resolveu todos os meus problemas:

pip install -U numpy

pip install -U scipy

Observe que a -Uopção pip installsolicita que o pacote seja atualizado . Sem ele, se o pacote já estiver instalado pip, você será informado e sairá sem fazer nada.

Michael Gogel
fonte
13

Se eu instalar pela primeira vez BLAS, LAPACK e GCC Fortran como pacotes de sistema (estou usando o Arch Linux ), posso instalar o SciPy com:

pip install scipy
user437730
fonte
1
Como você instala o blas? "pip install blas" e "apt-get install blas" falharam para mim.
eran
@Eran blas é um pacote archlinux. então você pode instalar através do pacman -S blas.
chao787
13

No Fedora, isso 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

Se houver algum public keyerro durante o download, adicione --nogpgcheckcomo parâmetro yum, por exemplo: yum --nogpgcheck install blas-devel

No Fedora 23 em diante, use em dnfvez de yum.

Shailen
fonte
Na minha env virtual, eu mudei as 2 últimas linhas da solução proposta nas seguintes linhas: instale o sudo pip --upgrade pip sudo pip instalar -U numpy sudo pip instalar -U scipy
1Man
7

Para os usuários do Arch Linux:

pip install --user scipy pré-requisitos os seguintes pacotes do Arch a serem instalados:

  • gcc-fortran
  • blas
  • lapack
klingt.net
fonte
1
É bom saber, mas seria melhor editar ou comentar a resposta de @ user437730.
Ryne Everett
Como instalo esses pacotes? ou seja, o gcc-Fortran, blas, LAPACK
user3731622
3

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

O repositório mudou, mas um

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

falhou para mim ... Com as etapas a seguir, finalmente funcionou (como raiz em um ambiente virtual, onde python3há um link para o Python 3.2.2): instale as dependências do Ubuntu (veja elaichi), clone o NumPy e o SciPy:

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

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

Crie o NumPy (dentro da numpypasta):

python3 setup.py build --fcompiler=gnu95

Instale o SciPy (dentro da scipypasta):

python3 setup.py install
lokalhorst
fonte
3

No meu caso, ele não estava funcionando até que eu também instalei o seguinte pacote: libatlas-base-dev, gfortran

 sudo apt-get install libatlas-base-dev gfortran

Em seguida, execute o pip install scipy

Pulkit Pahwa
fonte
3
  1. instalar python-3.4.4
  2. scipy-0.15.1-win32-superpack-python3.4
  3. aplique o seguinte documento de recomendação
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
fonte
2

A resposta é sim, existe.

Primeiro você pode instalar facilmente os comandos numpy use:

pip install numpy

Em seguida, instale o mkl, exigido pelo Scipy, e faça o download aqui

Depois de baixar o file_name.whl, você o 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

Então, no mesmo site, você pode baixar o scipy-0.18.1-cp35-cp35m-win32.whl

Nota: Você deve baixar o nome_do_arquivo.whl de acordo com a sua versão python, se a versão python for 32 bits python3.5, deverá fazer o download deste e o "win32" é sobre a sua versão python, não a versão do sistema operacional.

Em seguida, instale file_name.whl assim:

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

Depois, há apenas mais uma coisa a fazer: comentar uma linha específica ou haverá mensagens de erro quando você imputar o comando "import scipy".

Então comente esta linha

from numpy._distributor_init import NUMPY_MKL  # requires numpy+mkl

neste arquivo: your_own_path \ lib \ site-packages \ scipy__init __. py

Então você pode usar o SciPy :)

Aqui, você conta mais sobre o último passo.

Aqui está uma resposta semelhante a uma pergunta semelhante.

Statham
fonte
@Tonechas Que tal isso #
Statham
1

Além de todas essas respostas, se você instalar o python de 32 bits em sua máquina de 64 bits, precisará fazer o download de um scipy de 32 bits, independentemente da sua máquina. http://www.lfd.uci.edu/~gohlke/pythonlibs/ Na URL acima, você pode baixar os pacotes e o comando é: pip install

Anuroop Pendela
fonte
0

Para o gentoo, está no repositório principal: emerge --ask scipy

autômato
fonte
0

Você também pode usar isso no Windows com python 3.6 python -m pip install scipy

Ibrahim Isa
fonte