В этом примере показано, как создать MATLAB® массив в Python® и передайте его как входной параметр к sqrt
MATLAB функция.
matlab
пакет обеспечивает конструкторов, чтобы создать массивы MATLAB в Python. API MATLAB Engine для 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 массив.
Создайте многомерный массив. magic
функция возвращает 2D 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]