Converting char array into string cells

3 views (last 30 days)
How can i convert my array into different string cells Array=[0, 1,3,0] I used Cells=cellstr(num2str(array) ) And i got 1×1 cell {'0 1 3 0' } I want my cell to be 1×4(or 1×any number) {'0','1','3','0'} Please help

Accepted Answer

Cris LaPierre
Cris LaPierre on 8 Jan 2021
This creates a 1x4 cell array
Array = [0, 1,3,0];
A = num2cell(Array);
C = cellfun(@num2str,A,'UniformOutput',false)
C = 1x4 cell array
{'0'} {'1'} {'3'} {'0'}
  3 Comments

Sign in to comment.

More Answers (1)

Steven Lord
Steven Lord on 8 Jan 2021
Rather than creating a cell array containing char vectors, why not create a string array?
x = [0 1 3 0];
s = string(x)
s = 1×4 string array
"0" "1" "3" "0"
three = s(3)
three = "3"
threeChar = s{3}
threeChar = '3'
whos
Name Size Bytes Class Attributes s 1x4 312 string three 1x1 150 string threeChar 1x1 2 char x 1x4 32 double
I'm not 100% sure that indexing with curly braces to create a char vector was supported in release R2018b but if it wasn't calling char on the string array would work.
  1 Comment
Ayman Abdalla
Ayman Abdalla on 8 Jan 2021
I just checked, it's working Thank you very much

Sign in to comment.

Products


Release

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by