On Tue, Aug 29, 2017 at 1:08 PM, Neal Becker <ndbeck...@gmail.com> wrote: > [...] > [I] would guess that inside every Matlab array is a numpy array crying to be > freed - in both cases an array is a block of memory together with shape and > stride information. So I would hope a direct conversion could be done, at > least via C API if not directly with python numpy API. But it seems nobody > has done this, so maybe it's not that simple?
I was going to suggest this Stack Overflow post earlier but figured that you must have found it already: https://stackoverflow.com/questions/34155829/how-to-efficiently-convert-matlab-engine-arrays-to-numpy-ndarray Based on that it seems that at least arrays returned from the MATLAB engine can be reasonably converted using their underlying data (`_data` attribute, together with the `size` attribute to unravel multidimensional arrays). The other way around (i.e. passing numpy arrays to the MATLAB engine) seems less straightforward: all I could find was https://www.mathworks.com/matlabcentral/answers/216498-passing-numpy-ndarray-from-python-to-matlab The comments there suggest that you can instantiate `matlab.double` objects from lists that you can pass to the MATLAB engine. Explicitly converting your arrays to lists along this step don't sound too good to me. Disclaimer: I haven't tried either methods. Regards, András Deák > On Mon, Aug 28, 2017 at 5:32 PM Gregory Lee <grle...@gmail.com> wrote: >> >> I have not used Transplant, but it sounds fairly similar to >> Python-matlab-bridge. We currently optionally call Matlab via >> Python-matlab-bridge in some of the the tests for the PyWavelets package. >> >> https://arokem.github.io/python-matlab-bridge/ >> https://github.com/arokem/python-matlab-bridge >> >> I would be interested in hearing about the benefits/drawbacks relative to >> Transplant if there is anyone who has used both. >> >> >> On Mon, Aug 28, 2017 at 4:29 PM, CJ Carey <perimosocord...@gmail.com> >> wrote: >>> >>> Looks like Transplant can handle this use-case. >>> >>> Blog post: http://bastibe.de/2015-11-03-matlab-engine-performance.html >>> GitHub link: https://github.com/bastibe/transplant >>> >>> I haven't given it a try myself, but it looks promising. >>> >>> On Mon, Aug 28, 2017 at 4:21 PM, Stephan Hoyer <sho...@gmail.com> wrote: >>>> >>>> If you can use Octave instead of Matlab, I've had a very good experience >>>> with Oct2Py: >>>> https://github.com/blink1073/oct2py >>>> >>>> On Mon, Aug 28, 2017 at 12:20 PM, Neal Becker <ndbeck...@gmail.com> >>>> wrote: >>>>> >>>>> I've searched but haven't found any decent answer. I need to call >>>>> Matlab from python. Matlab has a python module for this purpose, but it >>>>> doesn't understand numpy AFAICT. What solutions are there for efficiently >>>>> interfacing numpy arrays to Matlab? >>>>> >>>>> Thanks, >>>>> Neal >>>>> >>>>> _______________________________________________ >>>>> NumPy-Discussion mailing list >>>>> NumPy-Discussion@python.org >>>>> https://mail.python.org/mailman/listinfo/numpy-discussion >>>>> >>>> >>>> >>>> _______________________________________________ >>>> NumPy-Discussion mailing list >>>> NumPy-Discussion@python.org >>>> https://mail.python.org/mailman/listinfo/numpy-discussion >>>> >>> >>> >>> _______________________________________________ >>> NumPy-Discussion mailing list >>> NumPy-Discussion@python.org >>> https://mail.python.org/mailman/listinfo/numpy-discussion >>> >> >> _______________________________________________ >> NumPy-Discussion mailing list >> NumPy-Discussion@python.org >> https://mail.python.org/mailman/listinfo/numpy-discussion > > > _______________________________________________ > NumPy-Discussion mailing list > NumPy-Discussion@python.org > https://mail.python.org/mailman/listinfo/numpy-discussion > _______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@python.org https://mail.python.org/mailman/listinfo/numpy-discussion