Xgboost: ImportError: Tidak ada modul bernama numpy.distutils.core (instalasi Ubuntu xgboost)

Dibuat pada 11 Feb 2016  ·  17Komentar  ·  Sumber: dmlc/xgboost

Saya pengguna baru Ubuntu dan baru-baru ini mengunduh versi desktop Ubuntu 14.04 bersama Windows 10.

Konfigurasi PC saya adalah: RAM 4 GB, 64 bit

Saya menginstal Anaconda menggunakan perintah berikut dari terminal (setelah mengunduh dari situs web):
bash Anaconda3-2.5.0-Linux-x86_64.sh

Instalasi berhasil.

Sekarang di terminal ubuntu saya, saya mengikuti langkah-langkah seperti yang diinstruksikan di http://xgboost.readthedocs.org/en/latest/build.html#building -on-ubuntu-debian

  1. Menginstal kompiler GNU C++ baru-baru ini -> berhasil
  2. git clone --recursive https://github.com/dmlc/xgboost cd xgboost; make -j4
    Membangun juga berhasil dan saya bisa membangun 'libxgboost.so'
  3. sudo apt-get install python-setuptools (Berhasil)
  4. cd python-package
  5. sudo python setup.py install

Perintah 5. mengembalikan kesalahan setelah beberapa baris. Kesalahannya adalah sebagai berikut:

'ImportError: Tidak ada modul bernama numpy.distutils.core'

Adakah yang bisa menyarankan cara menghilangkan kesalahan ini sehingga saya dapat menginstal xgboost ?

Log lengkap setelah langkah 5. adalah sebagai berikut:

_sidvash@sidvash-HP-Pavilion-g6-Notebook-PC:~/xgboost/python-package$ sudo python setup.py install
Instal libxgboost dari: ['/home/sidvash/xgboost/python-package/xgboost/../../lib/libxgboost.so']
menjalankan instal
menjalankan bdist_egg
menjalankan egg_info
menulis persyaratan ke xgboost.egg-info/requires.txt
menulis xgboost.egg-info/PKG-INFO
menulis nama tingkat atas ke xgboost.egg-info/top_level.txt
menulis dependency_links ke xgboost.egg-info/dependency_links.txt
membaca file manifes 'xgboost.egg-info/SOURCES.txt'
membaca templat manifes 'MANIFEST.in'
peringatan: tidak ada file yang cocok dengan '_' di bawah direktori 'xgboost/include'
peringatan: tidak ada file yang cocok dengan '_' di bawah direktori 'xgboost/src'
peringatan: tidak ada file yang disertakan sebelumnya yang cocok dengan 'xgboost/build/_' ditemukan di mana pun dalam distribusi
peringatan: tidak ada file yang disertakan sebelumnya yang cocok dengan 'xgboost/_.o' ditemukan di mana pun dalam distribusi
peringatan: tidak ada file yang disertakan sebelumnya yang cocok dengan '_.pyo' ditemukan di mana pun dalam distribusi
peringatan: tidak ada file yang disertakan sebelumnya yang cocok dengan '_.pyc' ditemukan di mana pun dalam distribusi
menulis file manifes 'xgboost.egg-info/SOURCES.txt'
menginstal kode perpustakaan ke build/bdist.linux-x86_64/egg
menjalankan install_lib
menjalankan build_py
membuat build/bdist.linux-x86_64/egg
membuat build/bdist.linux-x86_64/egg/xgboost
menyalin build/lib.linux-x86_64-2.7/xgboost/libpath.py -> build/bdist.linux-x86_64/egg/xgboost
menyalin build/lib.linux-x86_64-2.7/xgboost/VERSION -> build/bdist.linux-x86_64/egg/xgboost
menyalin build/lib.linux-x86_64-2.7/xgboost/build-python.sh -> build/bdist.linux-x86_64/egg/xgboost
menyalin build/lib.linux-x86_64-2.7/xgboost/__init__.py -> build/bdist.linux-x86_64/egg/xgboost
menyalin build/lib.linux-x86_64-2.7/xgboost/training.py -> build/bdist.linux-x86_64/egg/xgboost
menyalin build/lib.linux-x86_64-2.7/xgboost/compat.py -> build/bdist.linux-x86_64/egg/xgboost
menyalin build/lib.linux-x86_64-2.7/xgboost/core.py -> build/bdist.linux-x86_64/egg/xgboost
menyalin build/lib.linux-x86_64-2.7/xgboost/sklearn.py -> build/bdist.linux-x86_64/egg/xgboost
menyalin build/lib.linux-x86_64-2.7/xgboost/plotting.py -> build/bdist.linux-x86_64/egg/xgboost
kompilasi byte build/bdist.linux-x86_64/egg/xgboost/libpath.py ke libpath.pyc
kompilasi byte build/bdist.linux-x86_64/egg/xgboost/ init .py ke init .pyc
kompilasi byte build/bdist.linux-x86_64/egg/xgboost/training.py ke training.pyc
kompilasi byte build/bdist.linux-x86_64/egg/xgboost/compat.py ke compat.pyc
kompilasi byte build/bdist.linux-x86_64/egg/xgboost/core.py ke core.pyc
kompilasi byte build/bdist.linux-x86_64/egg/xgboost/sklearn.py ke sklearn.pyc
kompilasi byte build/bdist.linux-x86_64/egg/xgboost/plotting.py ke plotting.pyc
menginstal data paket ke build/bdist.linux-x86_64/egg
menjalankan install_data
menyalin /home/sidvash/xgboost/python-package/xgboost/../../lib/libxgboost.so -> build/bdist.linux-x86_64/egg/xgboost
membuat build/bdist.linux-x86_64/egg/EGG-INFO
menyalin xgboost.egg-info/PKG-INFO -> build/bdist.linux-x86_64/egg/EGG-INFO
menyalin xgboost.egg-info/SOURCES.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
menyalin xgboost.egg-info/dependency_links.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
menyalin xgboost.egg-info/not-zip-safe -> build/bdist.linux-x86_64/egg/EGG-INFO
menyalin xgboost.egg-info/requires.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
menyalin xgboost.egg-info/top_level.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
membuat 'dist/xgboost-0.4-py2.7.egg' dan menambahkan 'build/bdist.linux-x86_64/egg' ke dalamnya
menghapus 'build/bdist.linux-x86_64/egg' (dan semua yang ada di bawahnya)
Memproses xgboost-0.4-py2.7.egg
menghapus '/usr/local/lib/python2.7/dist-packages/xgboost-0.4-py2.7.egg' (dan semua yang ada di bawahnya)
membuat /usr/local/lib/python2.7/dist-packages/xgboost-0.4-py2.7.egg
Mengekstrak xgboost-0.4-py2.7.egg ke /usr/local/lib/python2.7/dist-packages
xgboost 0.4 sudah menjadi versi aktif di easy-install.pth

Diinstal /usr/local/lib/python2.7/dist-packages/xgboost-0.4-py2.7.egg
Memproses dependensi untuk xgboost==0.4
Mencari scipy
Membaca https://pypi.python.org/simple/scipy/
Pertandingan terbaik: scipy 0.17.0
Mengunduh https://pypi.python.org/packages/source/s/scipy/scipy-0.17.0.zip#md5 =28a4fe29e980804db162524f10873211
Memproses scipy-0.17.0.zip
Menulis /tmp/easy_install-2YPTnH/scipy-0.17.0/setup.cfg
Menjalankan scipy-0.17.0/setup.py -q bdist_egg --dist-dir /tmp/easy_install-2YPTnH/scipy-0.17.0/egg-dist-tmp-z4NE5c
Traceback (panggilan terakhir terakhir):
File "setup.py", baris 39, di
url='https://github.com/dmlc/xgboost')
File "/usr/lib/python2.7/distutils/core.py", baris 151, dalam pengaturan
dist.run_commands()
File "/usr/lib/python2.7/distutils/dist.py", baris 953, di run_commands
self.run_command(cmd)
File "/usr/lib/python2.7/distutils/dist.py", baris 972, di run_command
cmd_obj.run()
File "/usr/lib/python2.7/dist-packages/setuptools/command/install.py", baris 73, sedang dijalankan
self.do_egg_install()
File "/usr/lib/python2.7/dist-packages/setuptools/command/install.py", baris 96, di do_egg_install
cmd.run()
File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", baris 381, sedang dijalankan
self.easy_install(spec, bukan self.no_deps)
File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", baris 597, di easy_install
kembalikan self.install_item(None, spec, tmpdir, deps, True)
File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", baris 648, di install_item
self.process_distribution(spec, dist, deps)
File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", baris 694, di process_distribution
[persyaratan], self.local_index, self.easy_install
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", baris 620, dalam resolusi
dist = best[req.key] = env.best_match(req, ws, installer)
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", baris 858, di best_match
return self.obtain(req, installer) # coba dan unduh/instal
File "/usr/lib/python2.7/dist-packages/pkg_resources.py", baris 870, di dapatkan
kembali installer (persyaratan)
File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", baris 616, di easy_install
kembalikan self.install_item(spec, dist.location, tmpdir, deps)
File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", baris 646, di install_item
dist = self.install_eggs(spec, download, tmpdir)
File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", baris 834, di install_eggs
kembalikan self.build_and_install(setup_script, setup_base)
File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", baris 1040, di build_and_install
self.run_setup(setup_script, setup_base, argumen)
File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", baris 1025, di run_setup
run_setup(setup_script, argumen)
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", baris 50, di run_setup
lambda: execfile(
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", baris 100, sedang dijalankan
kembalikan fungsi()
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", baris 52, di
{' file ':setup_script, ' name ':' main '}
File "setup.py", baris 265, di

File "setup.py", baris 253, di setup_package

ImportError: Tidak ada modul bernama numpy.distutils`_

Komentar yang paling membantu

Jika 'pip install xgboost' tidak bekerja untuk Anda, masalah ini juga dapat diperbaiki dengan melakukan

sudo -s
python setup.py install 

Masalahnya adalah 'sudo python' akan menggunakan Python sistem alih-alih python anacoda.

Lebih detail: http://stackoverflow.com/questions/30626160/anaconda-python-not-available-from-sudo

Semua 17 komentar

Apakah Anda yakin menggunakan python yang benar?

Mencoba

which python

atau

readlink -f `which python`

untuk menentukan apakah Anda menggunakan Anaconda atau tidak.

Hai,

Terima kasih telah berkomentar.

python mana yang mengembalikan yang berikut:
/home/sidvash/anaconda3/bin/python

@brickerino : Saya baru saja memperbarui log lengkap setelah langkah 5 dalam deskripsi. Silakan lihat apakah itu membantu.

Pesan menunjukkan Anda tidak memiliki numpy, harap periksa apakah PYTHON_PATH Anda menunjuk ke jalur paket anaconda. Juga, pastikan conda install numpy jika belum

@phunterlau :
Saya memeriksa python_path menggunakan perintah berikut:
python -c "impor sys; print(sys.path)"

Ini mengembalikan :
['', '/home/sidvash/anaconda3/lib/python35.zip', '/home/sidvash/anaconda3/lib/python3.5', '/home/sidvash/anaconda3/lib/python3.5/plat- linux', '/home/sidvash/anaconda3/lib/python3.5/lib-dynload', '/home/sidvash/anaconda3/lib/python3.5/site-packages', '/home/sidvash/anaconda3/lib /python3.5/site-packages/Sphinx-1.3.5-py3.5.egg', '/home/sidvash/anaconda3/lib/python3.5/site-packages/cryptography-1.0.2-py3.5- linux-x86_64.egg', '/home/sidvash/anaconda3/lib/python3.5/site-packages/setuptools-19.6.2-py3.5.egg']

Ini terlihat baik bagi saya. Namun, saya melihat di posting pertama saya bahwa jalur "/usr/lib/python2.7/dist-packages" muncul di sejumlah baris dalam kesalahan dan saya tidak yakin apakah ini juga harus ada di jalur python atau bukan. Bisakah Anda menyarankan sesuatu?

Saya juga menjalankan "conda install numpy" yang mengembalikan yang berikut :

Menggunakan situs api Anaconda Cloud https://api.anaconda.org
Mengambil metadata paket: ....
Memecahkan spesifikasi paket: ........................
Paket paket untuk instalasi di lingkungan /home/sidvash/anaconda3:

Paket-paket berikut akan diunduh:

| paket | membangun |
| --- | --- |
| roda-0.29.0 | py35_0 82 KB |

Paket berikut akan DIPERBARUI:

wheel: 0.26.0-py35_1 --> 0.29.0-py35_0

Lanjutkan ([y]/n)? kamu

Mengambil paket...
wheel-0.29.0-p 100% |###########################################| Waktu: 0:00:01 50,38 kB/s
Mengekstrak paket...
[ LENGKAP ]|############################################################### #####| 100%
Membatalkan tautan paket...
[ LENGKAP ]|############################################################### #####| 100%
Menghubungkan paket...
[ LENGKAP ]|############################################################### #####| 100

Mencoba Sudo python setup.py install setelah menginstal ini tetapi tidak berhasil, masih kesalahan yang sama

baik, Anda memiliki python dari sistem dan anaconda, dan python 2 3 keduanya, dan Anda memiliki alat penyiapan sistem, jadi beberapa env telah kacau. saya dapat menyarankan membuat virtualenv dan menginstal numpy scikit-learn dan xgboost

@phunterlau : Terima kasih atas komentar Anda. Saya sangat menghargai bantuan Anda.

Saya seorang pemula di Ubuntu dan tidak ingin mengacaukan segalanya lebih jauh.

Bisakah Anda memberi tahu saya proses langkah demi langkah untuk melakukan ini?

Saya tahu bahwa saya dapat membuat virtualenv menggunakan yang berikut: (menginstal virtualenv tidak disarankan dengan conda)
conda create -n <env_name> python=3.5 anaconda

Dan bagaimana saya harus menginstal numpy scikit-learn dan xgboost pada env ini?

Saya dapat mengaktifkan env dengan:
source activate <env_name>

Haruskah saya melanjutkan dengan instalasi lebih lanjut sebagai berikut:
pip install numpy
pip install scikit-learn

Dan untuk xgboost saya harus mengulangi semua langkah ini?
git clone --recursive https://github.com/dmlc/xgboost cd xgboost; make -j4
cd python-package; sudo python setup.py install

Oke, jadi saya melakukan hal berikut tetapi masih mendapatkan kesalahan yang sama persis:
conda create -n snakes python=3.5 numpy pandas scikit-learn
sidvash:~$ source activate snakes
discarding /home/sidvash/anaconda3/bin from PATH
prepending /home/sidvash/anaconda3/envs/snakes/bin to PATH

cd xgboost/python-package
sudo python setup.py install

Untuk beberapa alasan, instalasi masih tetap mengacu pada "/usr/lib/python2.7/dist-packages"

Saya menyelesaikannya dengan mengikuti langkah-langkah di bawah ini:

  1. Hapus direktori saat ini bernama "xgboost" yang sebelumnya saya unduh dari github.
  2. instal pip xgboost

Ini bekerja seperti pesona. Saya tidak mencoba ini sebelumnya karena disebutkan di situs github bahwa Anda harus menginstal dari github untuk versi terbaru.

Saya memposting pertanyaan ini di stack overflow dan seseorang menyarankan ini. Berikut tautannya:
http://stackoverflow.com/questions/35332300/importerror-no-module-named-numpy-distutils-core-ubuntu-xgboost-installation/35493714#35493714

Bagaimanapun, terima kasih banyak atas bantuan Anda: @brickerino @phunterlau

Senang bahwa pip install xgboost membantu :-)

Jika 'pip install xgboost' tidak bekerja untuk Anda, masalah ini juga dapat diperbaiki dengan melakukan

sudo -s
python setup.py install 

Masalahnya adalah 'sudo python' akan menggunakan Python sistem alih-alih python anacoda.

Lebih detail: http://stackoverflow.com/questions/30626160/anaconda-python-not-available-from-sudo

@knguyen0105 Bagus bekerja untuk saya.... terima kasih

@knguyen0105 memberikan kesalahan
"/home/ashish/anaconda2/bin/../lib/libgomp.so.1: versi `GOMP_4.0' tidak ditemukan (diperlukan oleh /home/ashish/anaconda2/lib/python2.7/site-packages/xgboost /./lib/libxgboost.so)"

ada yang bisa bantu?

apa yang PYTHON_PATH seharusnya dikembalikan?

@knguyen0105 Ini bekerja dengan baik untuk saya! Terima kasih!

Terima kasih knguyen0105, Ringkasan untuk Ubuntu, anaconda 2:

  1. http://xgboost.readthedocs.io/en/latest/build.html
  2. sudo -s
    python setup.py instal
    dari pada
    cd python-paket; sudo python setup.py install

knguyen0105, terima kasih banyak

Apakah halaman ini membantu?
0 / 5 - 0 peringkat