設定
要件
MATLAB から Python® を呼び出すには、両方がシステムにインストールされている必要があります。
構成
Python インタープリターの設定とステータスにアクセス:
>> pe = pyenv
使用バージョンを指定:
>> pe = pyenv("Version","3.9")
PYTHONHOME 環境変数が Python のバージョンと一致していることを確認します。MATLAB にその値を表示:
>> getenv("PYTHONHOME")
適切なバージョンがシステムパスに含まれていることを確認:
>> getenv("PATH")
スクリプトで構成されたコードを実行:
>> outvars = pyrunfile(file,outputs)
Python モジュールと関数の呼び出し
>> py.module_name.function_name >> x = py.math.sqrt(42)
キーワード引数を渡す
直接呼び出すか pyargs を使用:
>>> foo(5,bar=42)
>> py.foo(5,bar=42)
>> py.foo(5,pyargs('bar',42))
モジュールの再読み込み
更新後のモジュールを再読み込み:
>> py.importlib.reload(module)
| MATLAB | Python |
Double, single |
Float |
complex single |
Complex |
(u)int8, (u)int16, (u)int32, (u)int64 |
int |
NaN |
Float(nan) |
Inf |
Float(inf) |
String, car |
Str |
Logical |
Bool |
Dictionary |
dict |
Struct |
dict |
Table |
Py.pandas.dataframe |
Datetime |
Py.datetime.datetime |
Duration |
Py.datetime.timedelta |
Apache® Parquet を使用すると、データを効率的に転送できます。
MATLAB から:
>> tbl = parquetread(fname) >> parquetwrite(tbl,fname)
Python から:
>>> df = pandas.read_parquet(fname) >>> pandas.Dataframe.to_parquet(df)
ディープラーニング
TensorFlow™、PyTorch®、ONNX™ に対応したインポーターを使用して MATLAB のモデルにアクセスします。
>> net = importKerasNetwork(model)
Python と Simulink の統合
Python インポーターを使用すると、Python モジュールやパッケージを Simulink にインポートできます。
インポーターを開く:
>> obj = Simulink.PythonImporter(); >> obj.view();
MATLAB Function ブロックと MATLAB System ブロック
MATLAB Function ブロックまたは MATLAB System ブロックを使用して Simulink に Python モジュールを実装します。