我有testPython.py:
import numpy as np
def numpyTest():
print("Testing numpy...")
x = np.array([1,2,3])
return x
我有test.m:
clear; clc;
value = py.testPython.numpyTest()
当我运行test.m时,我得到:
测试numpy ......
value =
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×24 py.buffer]
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: 8
nbytes: 24
ndim: 1
real: [1×1 py.numpy.ndarray]
shape: [1×1 py.tuple]
size: 3
strides: [1×1 py.tuple]
[1 2 3]
如何将python numpy数组转换为matlab矩阵?
答案 0 :(得分:0)
我们必须在这里进行一些转换:
clear; clc;
value = py.testPython.numpyTest();% ndarray
pyList = value.tolist(); % ndarray -> pylist
result = cellfun(@double,cell(pyList)) %pylist-> cell array -> double array
另一种选择是通过文件传输数据,但我不喜欢它。
Matlab Docs关于Python列表转换的链接: