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

В этом примере показано, как создать MATLAB® массив на Python® и передайте его как входной параметр в MATLAB sqrt функция.

The matlab пакет предоставляет конструкторы для создания массивов MATLAB на языке Python. MATLAB Engine API для Python может передать функции MATLAB такие массивы, как входные параметры, и может вернуть Python такие массивы, как выходные аргументы. Можно создать массивы любого числового или логического типа MATLAB из типов последовательности Python.

Создайте массив MATLAB из list Python. Вызовите sqrt функция в массиве.

import matlab.engine
eng = matlab.engine.start_matlab()
a = matlab.double([1,4,9,16,25])
b = eng.sqrt(a)
print(b)
[[1.0,2.0,3.0,4.0,5.0]]

Двигатель возвращается b, который представляет собой matlab.double 1 на 5 массив.

Создайте многомерный массив. The magic функция возвращает 2-D matlab.double массив на Python. Использование for цикл для печати каждой строки в отдельной линии. (Снова нажмите Enter, когда увидите ... запрос на закрытие цикла и печать.)

a = eng.magic(6)
for x in a: print(x)
... 
[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]

Вызовите tril функция для получения нижнего треугольного фрагмента a. Печать каждой строки в отдельной линии.

b = eng.tril(a)
for x in b: print(x)
... 
[35.0,0.0,0.0,0.0,0.0,0.0]
[3.0,32.0,0.0,0.0,0.0,0.0]
[31.0,9.0,2.0,0.0,0.0,0.0]
[8.0,28.0,33.0,17.0,0.0,0.0]
[30.0,5.0,34.0,12.0,14.0,0.0]
[4.0,36.0,29.0,13.0,18.0,11.0]

Похожие примеры

Подробнее о