How to convert a sym array into a string array?

I have very long arrays of symbolic variables which I need to convert to cell arrays of strings: For example, turning this:
syms x y u
q = [x y u]
into this:
qs = {'x' 'y' 'u'}
something like num2string() but with syms? I'd appreciate any help, thanks.

 채택된 답변

Walter Roberson
Walter Roberson 2017년 7월 23일

9 개 추천

qc = arrayfun(@char, q, 'uniform', 0);

댓글 수: 4

quoroy
quoroy 2017년 7월 24일
@Walter Roberson thank you so much! this worked perfectly, can't believe that was possible in one single line of code.
A slight variant of this is:
qc = arrayfun(@string, q);
which outputs a string array instead of a cell array filled with chars (consequently cellstr() can be used).
Chris J
Chris J 2021년 6월 2일
편집: Chris J 2021년 6월 2일
then string1 = cell2mat(qc)
syms x y u
q = [x y u]
q = 
cellstr(string(q))
ans = 1×3 cell array
{'x'} {'y'} {'u'}

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

추가 답변 (0개)

제품

질문:

2017년 7월 23일

댓글:

2021년 6월 2일

Community Treasure Hunt

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

Start Hunting!

Translated by