How to convert a numerical matrix into a matrix of formatted strings?
2 views (last 30 days)
Show older comments
Hi,
I'd like to convert a numerical matrix into a matrix of formatted strings.
Example of input matrix:[1 2 3.051 4]
What I expect as output: {'1.00' '2.00' '3.05' 4.00'} specified by the string format '%.2f' for instance.
Thanks for your tips.
[EDITED, JSimon, 06-Oct-2011 14:16 UTC]: Cell string wanted => square brackets to curly braces.
0 Comments
Answers (4)
Benjamin
on 6 Oct 2011
2 Comments
Grzegorz Knor
on 6 Oct 2011
Shorter solution:
V=[1;2;3.051;4];
M=[V 2*V];
C = arrayfun(@(x)sprintf('%.2f',x),M,'Uniform',false)
Jan
on 6 Oct 2011
Or as loop:
C = cell(size(M)); for i=1:numel(M); C{i}=sprintf('%.2f', M(i)); end
Using the linear index for M and C reduces the complexity.
See Also
Categories
Find more on Data Type Conversion 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!