私は、fortran 順序付けられた配列を含む ascii ファイルを読み取り、値を変更してから、そのデータを (fortran 順序で) ascii に書き戻すアプリケーションを作成しています。この配列を numpy に読み込み、配列が fortran 順であることを示し、データを fortran 順で書き戻す正しい方法は何ですか?
次のASCIIテキストを含むファイルがあるとします。
0.0 1.0 2.0 3.0 4.0 5.0 6.0 7.0
これらの数値は、fortran 順序で記述された 2x2x2 配列を表します。
ascii 形式は、上記よりも少し複雑です。numpy.loadtxt
ただし、この形式は、 などの自動 numpy ascii ローダーの使用にはあまり適していないと言えば十分です。
次のような行を実行して、配列を作成しています。
x = numpy.array([0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0], order='F')
これは非効率的であり、多くの余分なデータのコピーなどを行うことはわかっています。ただし、順序についてはもっと心配です。
したがって、この時点で x は Fortran 配列のようにメモリ内で順序付けられていると思います。さて、この配列をエクスポートするときに使用する必要がありますnumpy.nditer(x, order='F')
か?