I am using MATLAB Engine API for Python https://nl.mathworks.com/help/matlab/matlab-engine-for-python.html
I would like to open and save a file.
#import and start the engine
import matlab.engine
eng = matlab.engine.start_matlab()
print('Matlab engine started')
#File of interest
myBadFile='test.mat'
#Synchronize python/matlab working directory
eng.cd(os.getcwd(),nargout=0)
print(eng.pwd())
#Read file contents
VALUES=eng.load(myBadFile,nargout=1)
So far so good. I am actually surprised it worked so smoothly.
I do my stuff on VALUES
, then I would like to save it again.
If I do
VALUES=eng.save(myBadFile+'.test','VALUES','-v6',nargout=0)
I get:
MatlabExecutionError: Variable 'VALUES' not found.
If I do
VALUES=eng.save(myBadFile+'.test',VALUES,'-v6',nargout=0)
I get
MatlabExecutionError: Argument must contain a character vector.
So how do I save my VALUES which is a valid variable in python environment but it is not seen in matlab apparently?