concatenate 2 vectors as string

6 views (last 30 days)
Elysi Cochin
Elysi Cochin on 12 Oct 2022
Edited: Stephen23 on 12 Oct 2022
I have 2 vectors
a = [87.46 85.38 85.99 85.49 88.56 85.67]
b = [0.16 1.97 2.38 2.38 1.63 1.81]
I wanted to save the values of a and b in a string cell as
{87.46±0.16, 85.38±1.97, 85.99±2.38, 85.49±2.38, 88.56±1.63, 85.67±1.81}
  1 Comment
Stephen23
Stephen23 on 12 Oct 2022
Edited: Stephen23 on 12 Oct 2022
"I wanted to save the values of a and b in a string cell as"
The MATLAB documentation states "Avoid using cell arrays of strings. When you use cell arrays, you give up the performance advantages that come from using string arrays. "
You should use a string array, rather than a cell array of string scalars.

Sign in to comment.

Accepted Answer

Matt J
Matt J on 12 Oct 2022
Edited: Matt J on 12 Oct 2022
Why not as a string array?
a = [87.46 85.38 85.99 85.49 88.56 85.67];
b = [0.16 1.97 2.38 2.38 1.63 1.81];
c=a+string(char(177))+b
c = 1×6 string array
"87.46±0.16" "85.38±1.97" "85.99±2.38" "85.49±2.38" "88.56±1.63" "85.67±1.81"
If you really must have a cell array, then,
c=cellstr(c)
c = 1×6 cell array
{'87.46±0.16'} {'85.38±1.97'} {'85.99±2.38'} {'85.49±2.38'} {'88.56±1.63'} {'85.67±1.81'}

More Answers (0)

Categories

Find more on Characters and Strings in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!