- "config.csv" is a scalar string
- 'config.csv' is a character array
Passing a string variable to matlab script from Python using the matlab Python API
5 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Hi, This might be something really simple to someone who have done this, but i am struggling passing a string variable to matlab script from Python using the matlab Python API. I am doing this in 2017b
Here is what i have: 1. Matlab function: config = parseInputs(filename) %filename is a char array in matlab like "config.csv"
2. Python script file which attempts to call the above matlab function. I have saved my function parseInputs.m in the same directory as the python script.
Below is my python script:
import matlab.engine
eng = matlab.engine.start_matlab()
filename = "config.csv"
parameterMy = eng.parseInputs(filename, nargout=2)
I am getting an error like below:
File "C:\ProgramData\Anaconda3\lib\site-packages\matlab\engine\fevalfuture.py", line 82, in result
self._result = pythonengine.getFEvalResult(self._future,self._nargout, None, out=self._out, err=self._err)
MatlabExecutionError: Undefined function 'parseInputs' for input arguments of type 'char'.
Any hint on how to make it work? Thanks!
1 Commento
per isakson
il 12 Giu 2019
Modificato: per isakson
il 12 Giu 2019
"a char array in matlab like "config.csv" " . Double or single quotes makes a difference
However, that might not be relevant to the error you encounter.
Risposte (2)
David Hocker
il 11 Set 2020
I had a similar issue, and found that I didn't have the specific matlab function in my current working directory for my python code. Once I moved it there, I was able to get the command to execute. I also used python strings (double quotes, not single) for my string inputs.
0 Commenti
Vedere anche
Categorie
Scopri di più su Call MATLAB from Python in Help Center e File Exchange
Prodotti
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!