web-dev-qa-db-ja.com

MATLABコードをPythonに変換するツール

私は、MS論文から多数のMATLABコードを手に入れ、それを(numpy/scipyとmatplotlibを使用して)Pythonに変換し、オープンソースとして配布したいと考えています。 MATLABとPythonの科学ライブラリの類似性はわかっていますが、手動で変換するのは2週間以上になりません(ある程度の期間、毎日それに取り組んでいる場合)。変換を行うことができるツールが既に利用可能かどうか疑問に思っていました。

123

MatlabコードをPythonコードに変換するためのいくつかの代替ツールがあります(まだテストされていません):

また、2つの言語とnot変換との間のインターフェースに興味がある場合:

  • pymatlab :PythonからデータをMATLABワークスペースに送信し、スクリプトで操作して結果のデータをプルすることにより通信します。
  • Python-Matlabワームホール :双方向の相互作用がサポートされています。
  • Python-Matlab bridge :Python内からMatlabを使用し、iPython内でmatlab_magicを提供し、ipython内から通常のmatlabコードを実行します。
  • PyMat :PythonからMatlabセッションを制御します。
  • pymat2 :一見放棄されたPyMatの継続。
  • mlabwrapmlabwrap-purepy :MatlabをPythonライブラリー(PyMatベース)のように見せます。
  • oct2py :GNU OctaveコマンドをPython内から実行します。
  • pymex :MatlabにPythonインタープリターを埋め込みます。これも File Exchange にあります。
  • matpy :さまざまな方法でMATLABにアクセスします:変数の作成、.matファイルへのアクセス、MATLABエンジンへの直接インターフェイス(MATLABのインストールが必要)。
  • MatPy :数値線形代数とMatLabのようなインターフェイスでのプロットのためのPythonパッケージ。

Btwは、他の移行のヒントについてはこちらをご覧ください。

別の注意として、私はfortranのファンではありませんが、役に立つと思うかもしれない人々のために:

133

OMPC 、 "オープンソースMatlab-to-Pythonコンパイラ"があり、@-IoannisFilippidisが 彼の答え で言及していますが、まだ使用していません。

10
denis

Python内で.mファイルを呼び出すことができるoct2pyもあります

https://pypi.python.org/pypi/oct2py

MATLABとの互換性が高いGNU Octaveが必要です。

https://www.gnu.org/software/octave/

5
norweeg