主要内容

使用MATLAB中的数组Python

使用MATLAB®Python中的数组®,您可以在运行打包应用程序之前安装Python引擎,如中所述为Python安装MATLAB引擎API,或使用进口mypackage之前导入matlab在下面的程序中。

Python的MATLAB引擎API提供了一个名为matlab它允许你从Python调用MATLAB函数。的matlab包提供了在Python中创建MATLAB数组的构造函数。它可以从Python序列类型创建任何MATLAB数字或逻辑类型的数组。支持多维MATLAB数组。金宝app有关其他受支持的数组类型的列表,请参见金宝app将数据从Python传递到MATLAB

例子

  1. 在Python中创建一个MATLAB数组,并在其上调用MATLAB函数。假设您有一个名为mypackage还有一个方法叫做mysqrt在包里面,你可以使用matlab.double在给定包含数字的Python列表的情况下,创建一个双精度数组。你可以调用MATLAB函数mysqrtx,返回值为另一个matlab.double数组,如下程序所示:

    Import mypackage PKG = mypackage.initialize() x = matlab.double([1,4,9,16,25]) print(pypackage .mysqrt(x))

    输出结果为:

    [[1.0, 2.0, 3.0, 4.0, 5.0)]
  2. 创建多维数组。的魔法函数返回一个二维数组到Python作用域。假设你有方法调用mysqrt内部mypackage,你可以使用下面的代码来调用该方法:

    Import mypackage PKG = mypackage.initialize() x = matlab.double([1,4,9,16,25]) print(pypackage .mymagic(6))

    输出结果为:

    [[35.0, 1.0, 6.0, 26.0, 19.0, 24.0), (3.0, 32.0, 7.0, 21.0, 23.0, 25.0), (31.0, 9.0, 2.0, 22.0, 27.0, 20.0), (8.0, 28.0, 33.0, 17.0, 10.0, 15.0), (30.0, 5.0, 34.0, 12.0, 14.0, 16.0), (4.0, 36.0, 29.0, 13.0, 18.0, 11.0)]

相关的话题