Convert Array of Float to comma delimited string

39 views (last 30 days)
Hi I would like to convert an array of floats to a single string, with commas separating the numbers, as below:
data = [1 2 3 4];
output = "1, 2, 3, 4"
However, I cannot seem to get the commas implemented - here is my attempt:
data2 = cellstr(num2str(data));
output = strjoin(data2, ', ');
i then get an output of;
'1 2 3 4'
What am I doing wrong?

Accepted Answer

Stephen23
Stephen23 on 16 Nov 2020
Edited: Stephen23 on 16 Nov 2020
data = [1,2,3,4];
strjoin(compose("%d",data),", ") % provides formatting control
ans = "1, 2, 3, 4"
strjoin(""+data,", ") % default formatting
ans = "1, 2, 3, 4"
  2 Comments
RST
RST on 3 Aug 2023
And for 2D arrays we can do:
data = rand(3,4);
csvData = strjoin( join( compose('%.3f', data), ', '), newline())
csvData =
'0.979, 0.700, 0.043, 0.264 0.007, 0.619, 0.588, 0.401 0.695, 0.447, 0.679, 0.236'

Sign in to comment.

More Answers (0)

Categories

Find more on Data Type Conversion in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!