2012-08-31 14 views
8

'da bulunan scikit-learn sürümünün yükseltme sürümü Scikit-learn v 0.11 ile birlikte gelen EPD 7.3.1 (bugün Entegre Kanopi olarak adlandırılır) yüklüdür. Ubuntu 12.04 koşuyorum. 0.12 scikit-öğrenmesi yüklemem gerekiyor.Entegre Kanopi dağılımı

scikit-öğrenme sizin PYTHONPATH için scikit-öğrenme dizin ekleyin ve yerde eklentisini kurmak, doc says klon deposu: Mulitple scikit dirs ile (python setup.py build_ext --inplace

sorun EPD kendi kapalı dünya olmasıdır):
./lib/python2.7/site-packages/scikits/
./lib/python2.7/site-packages/sklearn

Ve sonra orada:
./EGG-INFO/scikit_learn/

Gerçekten bu noktaya ayarlanmış şeyleri almak için çok uzun zaman aldığı için denemek istemiyorum. Bu durumda scikit-learn'in talimatlarını takip etmeli miyim?

cevap

12

scikit-learn web sitesinde açıklanan eylemler, EPD'deki scikit-learn sürümünden bağımsız olarak çalışır. Python otomatik olarak, scikit-learn'in Git sürümünün dizin yoluna ayarlamanız gereken PYTHONPATHenvironment variable'daki scikit-öğrenme sürüm setini kullanacaktır.

bir Unix benzeri sistem üzerinde Bash kullanırsanız, aşağıdakileri yapmalıdırlar:

  • (I /home/yourname/bin/scikit-learn bunu klonlanmış bu örnekte) install scikit-learn's latest code için
  • Edit .bashrc eylemler gerçekleştirin ve ekleme satır: export PYTHONPATH="/home/yourname/bin/scikit-learn";
  • aç yeni terminal ve yazarak etkileşimli modda Python başlatmak python
    • Tür: import sklearn
    • Tür: sklearn.__verion__ bu şimdi niye bu işi yapar yerine 0.11

ait '0.12-git' göstermelidir? Python, modüllere ve paketlere bakması gereken tüm dizinleri takip etmek için sys.path (list yol) değişkenini dahili olarak kullanır. Bir modül veya paket istendiğinde, bir eşleşme bulunana kadar Python sıralı olarak bu listeden geçecektir. Yani, örneğin, bir modül sys.path'da birçok kez listelenebilir, ancak sadece listede ilk olarak görünen versiyon kullanılacaktır.

Her Python yüklemesinin, sys.path numaralı listede listelenen kendi varsayılan varsayılan yolu olacaktır. sys.path'u genişletmenin bir yolu, PYTHONPATH'daki yolları listelemektir. Python başladığında, bu ortam değişkenini okuyacak ve sys.path listesinin başına ekleyecektir. Bu nedenle, PYTHONPATH numaranıza scikit-learn'in başka bir versiyonuna yol eklerseniz (EPD'ler) Python, scikit-learn'in ilk sürümünü bulur ve sys.path'da listelenen sürüm yerine onu kullanır.

sys.path'u görüntülemek için, yalnızca import sys ve ardından print sys.path. Ayrıca, örneğin, sadece bir Python programında scikit-learn'in 0.12 sürümünü kullanmak ve 0'ı kullanmak isterseniz.Diğer tüm Python programlarında varsayılan olarak 11 sürümü o zaman PYTHONPATH boş bırakabilir ve yalnızca kod üstündeki elle 0.12 scikit-öğrenme yolunu ekleyin:

import sys 
sys.path.insert(0, '/home/yourname/bin/scikit-learn') 
import sklearn 
+1

yığın taşması üzerine topluluk kötü soruların downvotes verir ve iyi sorulara verilen oylar. Şimdilik soruyu bırakırdım, ama eğer insanlar reddetmeye başlarsa, silmek isteyebileceğinize dair iyi bir fikriniz olur. – Sicco

+0

Aynı problemle karşılaştım ama Mac'im var. Scikit'i sadece macports ile kurmayı başardım (scikits setup.py kullanarak değil, her zaman hatayla sonuçlanır). Ancak, bashrc'i bulamıyorum. Tek istediğim EPD (akademik) 'de Scikit'i .13'e güncellemek ve çok zor olduğunu kanıtlamak, herhangi bir yardımın büyük ölçüde takdir edilmesini sağlamak! – Shinjitsu

+0

@Shinjitsu .bashrc yerine .profile kullanmayı deneyin. Eğer işe yararsa beni bilgilendir. – Sicco

İlgili konular