Convert Array of Float to comma delimited string

28 Ansichten (letzte 30 Tage)
Ted Baker
Ted Baker am 16 Nov. 2020
Kommentiert: RST am 3 Aug. 2023
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?

Akzeptierte Antwort

Stephen23
Stephen23 am 16 Nov. 2020
Bearbeitet: Stephen23 am 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 Kommentare
Ted Baker
Ted Baker am 16 Nov. 2020
Thank you very much Stephen.
RST
RST am 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'

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Data Type Conversion finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by