'run' command with input argument - MATLAB 2018a

조회 수: 55 (최근 30일)
Gopalakrishnan venkatesan
Gopalakrishnan venkatesan 2020년 3월 20일
편집: Stephen23 2020년 3월 20일
I have Matlab script already existing in matlab path for example 'data_work_path'.
'data_work_path' function supports one input argument
I am going to call the above script from another script,
I will be getting the script name as string,
for example a = 'data', b = 'work', c = 'path'
run command woking when without input argument run([a, '_', b, '_', c])
but with input argument as string i am getting the error run([a, '_', b, '_', c, '(''alpha'')'])
can anyone help me?
Thanks in advance
  댓글 수: 1
Gopalakrishnan venkatesan
Gopalakrishnan venkatesan 2020년 3월 20일
Error using run (line 55)
Error: Invalid expression. Check for missing multiplication operator, missing or unbalanced delimiters, or other syntax
error. To construct matrices, use brackets instead of parentheses.

댓글을 달려면 로그인하십시오.

채택된 답변

Stephen23
Stephen23 2020년 3월 20일
편집: Stephen23 2020년 3월 20일
run does not work with functions, it only works with scripts:
If you want to call a function with some dynamic name, then you can use str2func like this:
str = sprintf('%s_%s_%s',a,b,c);
fun = str2func(str);
fun("alpha") % call it with whatever input arguments it requires.
Of course the function will need to be on the MATLAB Search Path or in the current directory.
  댓글 수: 2
Gopalakrishnan venkatesan
Gopalakrishnan venkatesan 2020년 3월 20일
sorry i need to call the another script only
Stephen23
Stephen23 2020년 3월 20일
편집: Stephen23 2020년 3월 20일
"sorry i need to call the another script only"
All of your screenshots clearly show that data_work_path is a function. You cannot call it with run.
run only works with scripts.
run does not call functions.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by