2通り紹介します。
どちらも前提としてPython用MATLABエンジンを使用しますので、まず、こちらのドキュメントを参考に、Pythonでインストールを行います。 ここではWindowsの場合を紹介します。コマンドプロンプトを起動し、以下のコマンドを実行します。
cd "$MATLAB_INSTALL\extern\engines\python"
python setup.py install
ここで、$MATLAB_INSTALLはMATLABのインストールフォルダー(例: C:\Program Files\MATLAB\R2019a)です。
これで、Pythonでimport matlab.engineが使えるようになります。
(1) 起動中のMATLABのワークスペースにPythonから変数を送る場合
起動したMATLABで、セッションを共有セッションにします。
【MATLAB側で実行】
matlab.engine.shareEngine
次に、Pythonからmatlab.engine.connect_matlab()で接続し、eng.workspace['A'] = Aの形でPythonの変数をMATLABに送ります。
【Python側で実行】
sample.py
import matlab.engine
eng = matlab.engine.connect_matlab()
A = 2.0
eng.workspace['A'] = A
# セッションへの接続を切断
eng.quit()
sample.pyをPythonで実行すると、MATLABのワークスペースに変数が追加されます。
(2) MATLABを起動してワークスペースにPythonから変数を送る場合
MATLABを新規に起動させるにはmatlab.engine.start_matlab()を使います。
【Python側で実行】
import matlab.engine
eng = matlab.engine.start_matlab()
A = 2.0
eng.workspace['A'] = A
# 確認用(MATLABのワークスペースから変数Aを取得して、Python側で表示)
B = eng.workspace['A']
print(B)
# エンジンの停止
eng.quit()
댓글 수: 0
댓글을 달려면 로그인하십시오.