MATLAB Answers

Converting char array into string cells

45 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

  0 Comments

Sign in to comment.

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

Cris LaPierre
Cris LaPierre on 8 Jan 2021
Would definitely recommend using actual string array instead, though.
Ayman Abdalla
Ayman Abdalla on 8 Jan 2021
Its working Thank you very much 🙏

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!