Convert a string array to a cell array of strings

Starting with a cell array of strings,
>> C={'person','woman','man','camera','TV'};
I know that it is possible to convert to a string array,
>> S = string(C)
S =
1×5 string array
"person" "woman" "man" "camera" "TV"
I am wondering, however, whether there is a command to do the reverse conversion. I can make my own as follows,
>> C=arrayfun(@(s)char(s),S,'uni',0)
C =
1×5 cell array
{'person'} {'woman'} {'man'} {'camera'} {'TV'}
However, I am wondering if there is a native Matlab command for doing this that I have overlooked.

 Accepted Answer

cellstr(S)

2 Comments

Ah, good. Counter-intuitively named though, IMO.
It could be claimed that it is natural because it takes string ('str') and produces a cell ('cell')
... But I wouldn't claim that.

Sign in to comment.

More Answers (0)

Categories

Tags

Community Treasure Hunt

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

Start Hunting!