我需要从python运行一个matlab脚本。matlab脚本返回一个数组,我想它可以保存为*.mat文件。在
是否可以直接从python执行matlab代码,然后检索它?在
例如:myarr = somematlabbridge.execute("matlab function")
或者,是否可以这样做:
^{pr2}$
这样我就可以把文件读入Python中检索matlab函数的输出了吗?在
我需要从matlab输出一个2D数组。顺便说一下,我在运行Anaconda/Spyder的Python。在
编辑
让我澄清一下我到底想做什么。
我想执行这个软件here,它是Matlab。我真的不知道。
但是脚本只需运行demo.m。运行该脚本时,脚本将创建一组内容,包括一个名为boxes的数组。我知道这一点是因为我可以看到代码,而且在Matlab环境中,我可以单击工作区中的boxes变量,Matlab将显示它的内容。如下图所示:
这个名为boxes的2D数组是我需要放入Python脚本中进行处理的。在
那么如何才能做到这一点呢?
我不太了解Matlab,所以我不确定是否可以说演示脚本是“返回长方体数组”,实际上脚本的最后一行是这样的:boxes = BoxRemoveDuplicates(boxes);
所以我在Matlab代码中添加了这一行:return boxes;
然后在Python中执行了以下操作:import win32com.client
h = win32com.client.Dispatch('matlab.application')
myboxes= h.Execute ("PATH_TO_FILE\\demo.m")
print myboxes
这给了我??? Error: Unexpected MATLAB operator.
正确的方法是什么?在