主要内容

使用MATLAB中的数组Python

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

Python的MATLAB引擎API提供了一个名为matlab使您能够从Python调用MATLAB函数。的matlab包提供了在Python中创建MATLAB数组的构造函数。它可以从Python序列类型创建任何MATLAB数字或逻辑类型的数组。支持多维MATLAB数组。万博1manbetx有关其他受支持的数组类型的列表,请参见万博1manbetx从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(PKG .mysqrt(x))

    的输出是:

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

    Import mypackage PKG = mypackage.initialize() x = matlab.double([1,4,9,16,25]) print(PKG .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)]

相关的话题