MATLAB not converting 2D arrays to Python arrays. "No module named 'libmwbuffer'" error.

76 Ansichten (letzte 30 Tage)
Hello,
I am trying to use Python with MATLAB. I am unable to pass certain MATLAB variables, namely arrays of 2 or more dimensions.
An excerpt of my code:
pyenv; % Version 3.8
np = py.importlib.import_module('numpy');
a = [1 2; 3 4];
a_py = np.array(a)
I get the error:
% Python Error: ModuleNotFoundError: No module named
% 'libmwbuffer'
% Python function '' might not be able to accept at least one
% input argument at position 1. The function may require a
% specific data type that you can construct from the MATLAB
% array. For more information, see the documentation for
% Python function '' and working with Python arrays.
Does anyone know what I am doing wrong? Do I have to install additional modules? Should I change my version of Python?
Thank you.

Akzeptierte Antwort

Abhinav Gupta
Abhinav Gupta am 14 Jun. 2021
Hi,
I think this issue occured because of unsupported version of Python on your system. You could refer to the links below to install Matlab-supported Python version in accordance with your Matlab version.
Hope it helps.
  1 Kommentar
José Felgueiras
José Felgueiras am 17 Jun. 2021
Thank you for the reply.
Python version 3.8 is compatible with R2020b, not R2020a. That is why it was failing.
Downgrading to 3.7 fixed it.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Call Python from MATLAB finden Sie in Help Center und File Exchange

Produkte


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by