4

このエラーを解決する方法を知っている人はいますか?

Exception Type: ImportError
Exception Value: No module named numpyio

私のPythonコード、私のインポートを参照してください:

from scipy.io.numpyio import fwrite, fread

手伝って頂けますか??

4

3 に答える 3

4

これは、scipy.io.numpyioモジュールがSciPy 0.7の後で削除されたためです(たとえば、このスレッドを参照してください)。SciPy入力/出力クックブックページから、代わりに関数numpy.fromfileとを使用できますnumpy.nadarray.tofile(「生のバイナリ」の見出しの下を参照)。

于 2012-05-17T14:24:18.380 に答える
3

numpy.ndarray.fromfile()使用すると、読み取るバイナリ形式を指定できますが (たとえば、float の場合は 'f')、.tofile()関数にはそのようなバイナリ オプションはありません。これは、他のソフトウェアが読み取るために特定の形式でバイナリ ファイルを書き込む必要がある私たちにとって、非常に不便な矛盾です。残念ながら、オープン チケットがないように見えるため、この問題は開発コミュニティによって無視されているようです。

array モジュールを使用して簡単な置換関数を作成しました。基本的なコードは次のようになります。

def fwrite(filename, formatstring, ndarray):
    arr = array.array(formatstring, ndarray.flatten())
    f = open(filename, 'w')
    arr.tofile(f)
    f.close()

これまでのところ、それはうまくいくようです。明らかに、これはエラーチェックなどで装飾することができます/すべきです.

于 2012-11-12T07:15:01.017 に答える
1

アーカイブから:

numpy配列のI/O関数は、それが作成されたnumpyに移動されるか、重複する機能を提供する場合は削除されました。numpy.loadとnumpy.saveを使用して、numpy独自の.npy形式で書き込み配列を読み取ります。asciiの場合はloadtxt/savetxtです。

于 2012-05-17T14:24:11.487 に答える