MATLAB Answers

How can transfer python result to Matlab matrix

조회 수: 204(최근 30일)
KOU DU
KOU DU 3 Apr 2019
댓글: KOU DU 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 ?

  댓글 수: 1

KOU DU
KOU DU 10 Apr 2019
I have solved this question in general case. Thank you!

댓글을 달려면 로그인하십시오.

답변(2개)

Agnish Dutta
Agnish Dutta 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

KOU DU
KOU DU 10 Apr 2019
Thank you Agnish, I have found a way to transfer directly in matlab.

댓글을 달려면 로그인하십시오.


Aim Newb
Aim Newb 18 Feb 2020
May you please inform about the way you transfer the results directly to matlab?
I'm having the same problem.

  댓글 수: 1

KOU DU
KOU DU 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

댓글을 달려면 로그인하십시오.

Community Treasure Hunt

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

Start Hunting!

Translated by