2012-04-09 8 views
1

ubuntuにpysparseをインストールする際に問題があります。私のpython-スパースパッケージをインストールしたのですが、例のコードを実行するときにPypparse installation ubuntu

from pysparse.sparse import spmatrix 
from pysparse.direct import superlu 
import numpy 
n = 100 
A = poisson2d_sym_blk(n) 
b = numpy.ones(n*n) 
x = numpy.empty(n*n) 
LU = superlu.factorize(A.to_csr(), diag_pivot_thresh=0.0) 
LU.solve(b, x) 

は私が

$ pip install pysparse 
Requirement already satisfied: pysparse in /usr/lib/python2.6/dist-packages 
Installing collected packages: pysparse 
Successfully installed pysparse 

なぜを実行している

Traceback (most recent call last): 
    File "sparse2.py", line 1, in <module> 
    from pysparse.sparse import spmatrix 
ImportError: No module named sparse 

は、私も試してみましたエラーメッセージが表示されますドキュメントに記載されていドキュメントのサンプルコードは動作しませんか?

ありがとうございます!

+0

あなたはどのバージョンのUbuntuを使用していますか?私が見ることができるように、pipはpython2.6にリンクされています。しかし私の知る限りでは、UbuntuのデフォルトのPythonインストールはいくつかのバージョンが2.7になっているので、正しいインタープリターを呼び出せますか? – dsign

+0

あなたは 'pysparse import sparse'から' sparse.spmatrix'を使ってみましたか? – user545424

答えて

1

あなたはUbuntu v11.10で発生したエラーを再現しました。コードは、pysparseのWebサイト(http://pysparse.sourceforge.net/fact.html)のサンプルコードと同じように見えます。

考えられる理由:

  • (最も可能性が高い)の例では、古く、例が書かれていたので、pysparseモジュールのレイアウトが変更されたことがpysparse Ubuntuのパッケージの変更の著者/メンテナことは可能ですインポートパスが異なるようにモジュールのレイアウトを変更します。

私はモジュールの名前空間を表示するには、モジュール上のディレクトリを()を実行すると、私は「スパース」または「直接」の名前が表示されていないが、私は直接クラスを参照してくださいます。

Python 2.7.2+ (default, Jul 20 2012, 22:12:53)

>>> import pysparse

>>> dir(pysparse)

['__builtins__', '__doc__', '__file__', '__name__', '__package__', '__path__', '__version__', 'itsolvers', 'jdsym', 'os', 'precon', 'sparray', 'spmatrix', 'superlu', 'umfpack']

変更するには、import文を

$> python

は:

from pysparse import spmatrix

from pysparse import superlu

とテストコードは動作するはずです。

関連する問題