Использование массивов MATLAB в Python

Чтобы использовать массивы MATLAB® в Python®, можно или установить механизм Python прежде, чем запустить пакетное приложение, как описано в Установке Engine API MATLAB для Python (MATLAB), или использовать import mypackage перед import matlab в следующих программах.

API MATLAB Engine для Python обеспечивает пакет Python под названием matlab это позволяет вам вызвать функции MATLAB из Python. matlab пакет обеспечивает конструкторов, чтобы создать массивы MATLAB в Python. Это может создать массивы любого MATLAB числовой или логический тип от типов последовательности Python. Поддерживаются многомерные массивы MATLAB. Для списка других поддерживаемых типов массивов смотрите Данные о Передаче к MATLAB из Python (MATLAB).

Примеры

  1. Создайте массив MATLAB в Python и вызовите функцию MATLAB на нем. Предположение, что у вас есть пакет под названием mypackage и метод под названием mysqrt в пакете можно использовать matlab.double создать массив типа double, учитывая список Python, который содержит числа. Можно вызвать функцию MATLAB mysqrt на x, и возвращаемым значением является другой matlab.double массив как показано в следующей программе:

    import matlab
    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. Создайте многомерный массив. magic функция возвращает 2D массив в осциллограф Python. Принятие вас имеет метод под названием mysqrt в mypackage, можно использовать следующий код, чтобы вызвать тот метод:

    import matlab
    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]]
    

Похожие темы