Então sempre que eu tento
pip install -U scikit-learn
Eu recebo:
ImportError: libatlas.so.3gf: cannot open shared object file: No such file or directory
Eu me certifiquei de ter atlas-base
no meu /usr/lib/
diretório. O que estou fazendo de errado?
Editar: esclarecimentos, estou fazendo isso em um virtualenv.
Editar 2: Alguém me sugeriu usar sudo apt-get install python-scipy
e é isso que recebo quando tento importar:
>>> import sklearn
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/scikit_learn-0.13-py2.7-linux-x86_64.egg/sklearn/__init__.py", line 32, in <module>
from .base import clone
File "/usr/local/lib/python2.7/dist-packages/scikit_learn-0.13-py2.7-linux-x86_64.egg/sklearn/base.py", line 9, in <module>
import numpy as np
File "/usr/lib/python2.7/dist-packages/numpy/__init__.py", line 137, in <module>
import add_newdocs
File "/usr/lib/python2.7/dist-packages/numpy/add_newdocs.py", line 9, in <module>
from numpy.lib import add_newdoc
File "/usr/lib/python2.7/dist-packages/numpy/lib/__init__.py", line 13, in <module>
from polynomial import *
File "/usr/lib/python2.7/dist-packages/numpy/lib/polynomial.py", line 17, in <module>
from numpy.linalg import eigvals, lstsq
File "/usr/lib/python2.7/dist-packages/numpy/linalg/__init__.py", line 48, in <module>
from linalg import *
File "/usr/lib/python2.7/dist-packages/numpy/linalg/linalg.py", line 23, in <module>
from numpy.linalg import lapack_lite
ImportError: /usr/lib/liblapack.so.3gf: undefined symbol: ATL_chemv
Edição 3: Depois de corrigir alguns problemas de dependências com numpy, agora recebo:
import fblas
ImportError: libatlas.so.3gf: cannot open shared object file: No such file or directory
Responder1
Para obter as dependências, tente
sudo apt-get install python python-dev libatlas3-base-dev gcc gfortran g++
Além disso, você deve verificar se o numpy está atualizado:
>> importar numpy
>> numpy.versão.versão
'1.6.1'
(por exemplo). Acho que você deseja numpy> 1.5.0 para a distribuição scipy mais recente.
Então você pode tentar o sudo apt-get install python-scipy
comando sugerido nas outras respostas.
Responder2
sudo apt-get install python-sklearn
Editar:
hdante@aielwaste:~$ python
Python 2.7.3 (default, Sep 26 2012, 21:51:14)
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import sklearn
>>>
Responder3
sudo apt-get install python-scipy
Responder4
Eu posso trabalhar por
echo "/usr/lib/atlas-base" | sudo tee /etc/ld.so.conf.d/atlas-lib.conf
sudo ldconfig
Obrigado por este tópico: https://unix.stackexchange.com/questions/52703/using-atlas-from-scipy