Azzera filtri
Azzera filtri

How can transfer python result to Matlab matrix

122 visualizzazioni (ultimi 30 giorni)
KOU DU
KOU DU il 3 Apr 2019
Commentato: KOU DU il 19 Feb 2020
I use 'system' to import a python coding and got the result as show below:
G=
Python ndarray with properties:
T: [1×1 py.numpy.ndarray]
base: [1×1 py.NoneType]
ctypes: [1×1 py.numpy.core._internal._ctypes]
data: [1×3 py.memoryview]
dtype: [1×1 py.numpy.dtype]
flags: [1×1 py.numpy.flagsobj]
flat: [1×1 py.numpy.flatiter]
imag: [1×1 py.numpy.ndarray]
itemsize: [1×1 py.int]
nbytes: [1×1 py.int]
ndim: [1×1 py.int]
real: [1×1 py.numpy.ndarray]
shape: [1×2 py.tuple]
size: [1×1 py.int]
strides: [1×2 py.tuple]
[[1.00000001 1.00000001 3.00000001]
[1.00000001 1.00000001 3.00000001]
[1.00000001 1.00000001 3.00000001]]
How Can I transfer the data of G in format of Matlab matrix ?

Risposte (2)

Agnish Dutta
Agnish Dutta il 10 Apr 2019
You need to save this array in a format that MATLAB understands. You could use scipy.io to do this.
As an example:
import numpy as np
import scipy.io
x = np.linspace(0, 2 * np.pi, 100)
y = np.cos(x)
scipy.io.savemat('test.mat', dict(x=x, y=y))
You can then load this in matlab with "load". Refer to the following for more information:
  1 Commento
KOU DU
KOU DU il 10 Apr 2019
Thank you Agnish, I have found a way to transfer directly in matlab.

Accedi per commentare.


Aim Newb
Aim Newb il 18 Feb 2020
May you please inform about the way you transfer the results directly to matlab?
I'm having the same problem.
  1 Commento
KOU DU
KOU DU il 19 Feb 2020
For example, In Matlab
A_Array=py.numpy.array(B) % B is the data which you got from python, A is in array format
A_matrix=nparray2mat(A_Array); %change python array to matlab matrix
you can find nparray2mat in this answer:
fr.mathworks.com/matlabcentral/answers/157347-convert-python-numpy-array-to-double

Accedi per commentare.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by