Utilizar arreglos de MATLAB en Python
Este ejemplo muestra cómo crear un arreglo de MATLAB® en Python® y pasarlo como argumento de entrada a la función de MATLAB sqrt
.
El paquete matlab
proporciona constructores para crear arreglos de MATLAB en Python. La API del motor de MATLAB para Python puede pasar esos arreglos como argumentos de entrada a las funciones de MATLAB, y puede devolver los arreglos como argumentos de salida de Python. Puede crear arreglos de cualquier tipo numérico o lógico de MATLAB, a partir de tipos de secuencia de Python.
Cree un arreglo de MATLAB desde una list
de Python. Llame a la función sqrt
en el arreglo.
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]]
El motor devuelve b
, que es un arreglo matlab.double
de 1 por 5.
Cree un arreglo multidimensional. La función magic
devuelve un arreglo 2D matlab.double
a Python. Utilice un bucle for
para imprimir cada fila en una línea independiente. (Vuelva a pulsar Enter cuando vea la línea de comandos ...
para cerrar el bucle e imprimir).
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]
Llame a la función tril
para obtener la parte triangular inferior de a
. Imprima cada fila en una línea independiente.
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]